TPTP Problem File: ITP207^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : ITP207^1 : TPTP v8.2.0. Released v8.1.0.
% Domain   : Interactive Theorem Proving
% Problem  : Sledgehammer problem Heap_Time_Monad 00386_012441
% Version  : [Des22] axioms.
% English  :

% Refs     : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
%          : [Des22] Desharnais (2022), Email to Geoff Sutcliffe
% Source   : [Des22]
% Names    : 0018_Heap_Time_Monad_00386_012441 [Des22]

% Status   : Theorem
% Rating   : 0.80 v8.2.0, 0.85 v8.1.0
% Syntax   : Number of formulae    : 9497 (4751 unt;1323 typ;   0 def)
%            Number of atoms       : 21187 (10065 equ;   0 cnn)
%            Maximal formula atoms :   23 (   2 avg)
%            Number of connectives : 80335 (1831   ~; 322   |;1284   &;69539   @)
%                                         (   0 <=>;7359  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   22 (   5 avg)
%            Number of types       :  126 ( 125 usr)
%            Number of type conns  : 7255 (7255   >;   0   *;   0   +;   0  <<)
%            Number of symbols     : 1201 (1198 usr;  64 con; 0-11 aty)
%            Number of variables   : 20470 (2683   ^;17568   !; 219   ?;20470   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            from the van Emde Boas Trees session in the Archive of Formal
%            proofs - 
%            www.isa-afp.org/browser_info/current/AFP/Van_Emde_Boas_Trees
%            2022-02-17 13:57:18.443
%------------------------------------------------------------------------------
% Could-be-implicit typings (125)
thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J_J,type,
    produc1319942482725812455at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J_J,type,
    set_Pr4244404650639074861atural: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_J,type,
    set_Pr1281608226676607948nteger: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_M_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    produc8392782284284844111e_term: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_M_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    produc998928222018024388e_term: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc989692990947075319atural: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    produc1908205239877642774nteger: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    set_Pr9222295170931077689nt_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_M_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    produc1821397396195235155e_term: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    produc2285326912895808259nt_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Nat__Onat_J,type,
    produc2990138482962207008rm_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Int__Oint_J,type,
    produc8035659500307786108rm_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Nat__Onat_J,type,
    produc2126621968916342571rm_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Int__Oint_J,type,
    produc7172142986261921671rm_int: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_J,type,
    set_Pr8056137968301705908nteger: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Nat__Onat_J,type,
    produc531535059062615580rm_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Int__Oint_J,type,
    produc5577056076408194680rm_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_M_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    produc1017113440723519068e_term: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Code____Numeral__Onatural_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc8731074985263844745atural: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    produc8763457246119570046nteger: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    set_Pr1872883991513573699nt_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_J,type,
    produc3911288613690379145it_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_M_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    produc3832618445565238089e_term: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    produc7773217078559923341nt_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_J,type,
    produc4453839368661128058it_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J,type,
    set_Pr4329608150637261639at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc4471711990508489141at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Nat__Onat_J,type,
    produc7296731851001612483rm_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Int__Oint_J,type,
    produc3118880831492415775rm_int: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    option8956607266484857688it_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc3843707927480180839at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J,type,
    set_Pr457366540195662369at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Nat__Onat_J,type,
    produc979532391916189970rm_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Int__Oint_J,type,
    produc6025053409261769070rm_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Predicate__Opred_It__Product____Type__Ounit_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc4675096598859438275atural: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    option3562590408128118217it_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_Pr8693737435421807431at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    produc8664842809031399944it_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc732395585841259969at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_Mt__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_J_J,type,
    set_Pr1932065953672099015od_o_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    produc3346328345660746739nteger: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc859450856879609959at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_Mt__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_J,type,
    produc2934264451710624999od_o_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    produc3260487557148687353it_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc7993323856043421654atural: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    produc5240993858131070144nteger: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Int__Oint_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc8915214464240719482atural: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Int__Oint_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    produc6162884466328367972nteger: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J,type,
    produc4972180933644002618e_term: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J,type,
    produc6241069584506657477e_term: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J,type,
    produc8551481072490612790e_term: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Nat__Onat_J_Mt__Set__Oset_It__Nat__Onat_J_J_J,type,
    set_Pr5488025237498180813et_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Int__Oint_J_Mt__Set__Oset_It__Int__Oint_J_J_J,type,
    set_Pr2522554150109002629et_int: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J,type,
    option6357759511663192854e_term: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J,type,
    produc6653097349344004940it_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc7248412053542808358at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    produc6945250483304103390nt_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Int__Oint_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    produc759720530913461378nt_int: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_li5450038453877631591at_nat: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    list_s1210847774152347623at_nat: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    list_s8839374986383574687nt_int: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_se7855581050983116737at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    set_se6260736226359567993nt_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_It__Nat__Onat_J_Mt__Set__Oset_It__Nat__Onat_J_J,type,
    produc7819656566062154093et_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_It__Int__Oint_J_Mt__Set__Oset_It__Int__Oint_J_J,type,
    produc2115011035271226405et_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc7822875418678951345atural: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc8923325533196201883nteger: $tType ).

thf(ty_n_t__Filter__Ofilter_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    filter1242075044329608583at_nat: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    list_P6011104703257516679at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    set_Pr1261947904930325089at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    set_Pr958786334691620121nt_int: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
    set_list_list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Nat__Onat_J_J_J,type,
    set_set_list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Set__Oset_It__Nat__Onat_J_J_J,type,
    set_list_set_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J,type,
    produc6271795597528267376eger_o: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J_J,type,
    set_set_set_nat: $tType ).

thf(ty_n_t__Heap____Time____Monad__OHeap_It__Product____Type__Ounit_J,type,
    heap_T5738788834812785303t_unit: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Ounit_J_J,type,
    set_li873732205721079667t_unit: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Product____Type__Ounit_J_J,type,
    set_set_Product_unit: $tType ).

thf(ty_n_t__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J,type,
    heap_e7401611519738050253t_unit: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Num__Onum_Mt__Num__Onum_J,type,
    product_prod_num_num: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Num__Onum_J,type,
    product_prod_nat_num: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    product_prod_nat_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    product_prod_int_int: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    set_Product_prod_o_o: $tType ).

thf(ty_n_t__Sum____Type__Osum_It__Nat__Onat_Mt__Nat__Onat_J,type,
    sum_sum_nat_nat: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__String__Ochar_J_J,type,
    set_list_char: $tType ).

thf(ty_n_t__Filter__Ofilter_It__Set__Oset_It__Nat__Onat_J_J,type,
    filter_set_nat: $tType ).

thf(ty_n_t__Predicate__Opred_It__Product____Type__Ounit_J,type,
    pred_Product_unit: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    list_list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    set_list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Int__Oint_J_J,type,
    set_list_int: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_It__Nat__Onat_J_J,type,
    list_set_nat: $tType ).

thf(ty_n_t__List__Olist_It__Code____Numeral__Ointeger_J,type,
    list_Code_integer: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    set_set_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Int__Oint_J_J,type,
    set_set_int: $tType ).

thf(ty_n_t__Set__Oset_It__Code____Numeral__Onatural_J,type,
    set_Code_natural: $tType ).

thf(ty_n_t__Set__Oset_It__Code____Numeral__Ointeger_J,type,
    set_Code_integer: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Ounit_J,type,
    list_Product_unit: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Ounit_J,type,
    set_Product_unit: $tType ).

thf(ty_n_t__Heap____Time____Monad__OHeap_Itf__a_J,type,
    heap_Time_Heap_a: $tType ).

thf(ty_n_t__List__Olist_It__Typerep__Otyperep_J,type,
    list_typerep: $tType ).

thf(ty_n_t__Set__Oset_It__String__Oliteral_J,type,
    set_literal: $tType ).

thf(ty_n_t__Option__Ooption_It__Num__Onum_J,type,
    option_num: $tType ).

thf(ty_n_t__List__Olist_It__String__Ochar_J,type,
    list_char: $tType ).

thf(ty_n_t__Filter__Ofilter_It__Nat__Onat_J,type,
    filter_nat: $tType ).

thf(ty_n_t__Set__Oset_It__String__Ochar_J,type,
    set_char: $tType ).

thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
    list_nat: $tType ).

thf(ty_n_t__List__Olist_It__Int__Oint_J,type,
    list_int: $tType ).

thf(ty_n_t__Set__Oset_It__Rat__Orat_J,type,
    set_rat: $tType ).

thf(ty_n_t__Set__Oset_It__Num__Onum_J,type,
    set_num: $tType ).

thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
    set_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Int__Oint_J,type,
    set_int: $tType ).

thf(ty_n_t__Code____Numeral__Onatural,type,
    code_natural: $tType ).

thf(ty_n_t__Code____Numeral__Ointeger,type,
    code_integer: $tType ).

thf(ty_n_t__Product____Type__Ounit,type,
    product_unit: $tType ).

thf(ty_n_t__Typerep__Otyperep,type,
    typerep: $tType ).

thf(ty_n_t__String__Oliteral,type,
    literal: $tType ).

thf(ty_n_t__Set__Oset_I_Eo_J,type,
    set_o: $tType ).

thf(ty_n_t__String__Ochar,type,
    char: $tType ).

thf(ty_n_t__Rat__Orat,type,
    rat: $tType ).

thf(ty_n_t__Num__Onum,type,
    num: $tType ).

thf(ty_n_t__Nat__Onat,type,
    nat: $tType ).

thf(ty_n_t__Int__Oint,type,
    int: $tType ).

thf(ty_n_tf__a,type,
    a: $tType ).

% Explicit typings (1198)
thf(sy_c_Archimedean__Field_Oceiling_001t__Rat__Orat,type,
    archim2889992004027027881ng_rat: rat > int ).

thf(sy_c_Archimedean__Field_Ofloor__ceiling__class_Ofloor_001t__Rat__Orat,type,
    archim3151403230148437115or_rat: rat > int ).

thf(sy_c_Archimedean__Field_Ofrac_001t__Rat__Orat,type,
    archimedean_frac_rat: rat > rat ).

thf(sy_c_Archimedean__Field_Oround_001t__Rat__Orat,type,
    archim7778729529865785530nd_rat: rat > int ).

thf(sy_c_BNF__Cardinal__Arithmetic_Octwo,type,
    bNF_Cardinal_ctwo: set_Product_prod_o_o ).

thf(sy_c_BNF__Cardinal__Arithmetic_Oczero_001_Eo,type,
    bNF_Cardinal_czero_o: set_Product_prod_o_o ).

thf(sy_c_BNF__Cardinal__Order__Relation_Ocard__of_001t__Nat__Onat,type,
    bNF_Ca3793111618940312692of_nat: set_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_BNF__Cardinal__Order__Relation_Ocard__order__on_001_Eo,type,
    bNF_Ca8331644756375544342r_on_o: set_o > set_Product_prod_o_o > $o ).

thf(sy_c_BNF__Cardinal__Order__Relation_OnatLeq,type,
    bNF_Ca8665028551170535155natLeq: set_Pr1261947904930325089at_nat ).

thf(sy_c_BNF__Cardinal__Order__Relation_OnatLess,type,
    bNF_Ca8459412986667044542atLess: set_Pr1261947904930325089at_nat ).

thf(sy_c_BNF__Def_Oeq__onp_001t__List__Olist_It__String__Ochar_J,type,
    bNF_eq_onp_list_char: ( list_char > $o ) > list_char > list_char > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_J_J,type,
    bNF_re5598663031114558885t_char: ( $o > $o > $o ) > ( ( $o > $o > $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > $o > $o > list_char > list_char ) > $o ) > ( $o > $o > $o > $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > $o > $o > $o > list_char > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J_J_J_J_J_J,type,
    bNF_re8691941649098027561iteral: ( $o > $o > $o ) > ( ( $o > $o > $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > $o > $o > literal > literal ) > $o ) > ( $o > $o > $o > $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > $o > $o > $o > literal > literal ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_J,type,
    bNF_re7347849368244578525t_char: ( $o > $o > $o ) > ( ( $o > $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > $o > list_char > list_char ) > $o ) > ( $o > $o > $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > $o > $o > list_char > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J_J_J_J_J,type,
    bNF_re5719858693005739489iteral: ( $o > $o > $o ) > ( ( $o > $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > $o > literal > literal ) > $o ) > ( $o > $o > $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > $o > $o > literal > literal ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J,type,
    bNF_re7972843584066424825t_char: ( $o > $o > $o ) > ( ( $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > list_char > list_char ) > $o ) > ( $o > $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > $o > list_char > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J_J_J_J,type,
    bNF_re136309367175754621iteral: ( $o > $o > $o ) > ( ( $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > literal > literal ) > $o ) > ( $o > $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > $o > literal > literal ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J,type,
    bNF_re796896441190010845t_char: ( $o > $o > $o ) > ( ( $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > list_char > list_char ) > $o ) > ( $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > list_char > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J_J_J,type,
    bNF_re2365650225897248225iteral: ( $o > $o > $o ) > ( ( $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > literal > literal ) > $o ) > ( $o > $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > $o > literal > literal ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J,type,
    bNF_re4583855572895197261t_char: ( $o > $o > $o ) > ( ( $o > $o > list_char > list_char ) > ( $o > $o > list_char > list_char ) > $o ) > ( $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > list_char > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J_J,type,
    bNF_re5778109699181701841iteral: ( $o > $o > $o ) > ( ( $o > $o > list_char > list_char ) > ( $o > $o > literal > literal ) > $o ) > ( $o > $o > $o > list_char > list_char ) > ( $o > $o > $o > literal > literal ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_001_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J,type,
    bNF_re441219624009962717t_char: ( $o > $o > $o ) > ( ( $o > list_char > list_char ) > ( $o > list_char > list_char ) > $o ) > ( $o > $o > list_char > list_char ) > ( $o > $o > list_char > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_001_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J,type,
    bNF_re1595102025518187489iteral: ( $o > $o > $o ) > ( ( $o > list_char > list_char ) > ( $o > literal > literal ) > $o ) > ( $o > $o > list_char > list_char ) > ( $o > $o > literal > literal ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_001_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J,type,
    bNF_re6157522605288126113t_char: ( $o > $o > $o ) > ( ( list_char > list_char ) > ( list_char > list_char ) > $o ) > ( $o > list_char > list_char ) > ( $o > list_char > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001_Eo_001_Eo_001_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_001_062_It__String__Oliteral_Mt__String__Oliteral_J,type,
    bNF_re6148748351543924773iteral: ( $o > $o > $o ) > ( ( list_char > list_char ) > ( literal > literal ) > $o ) > ( $o > list_char > list_char ) > ( $o > literal > literal ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001_062_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    bNF_re398004352372739002nteger: ( int > code_integer > $o ) > ( ( int > int ) > ( code_integer > code_integer ) > $o ) > ( int > int > int ) > ( code_integer > code_integer > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    bNF_re3379532845092657523nteger: ( int > code_integer > $o ) > ( int > code_integer > $o ) > ( int > int ) > ( code_integer > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001t__Int__Oint_001t__Int__Oint,type,
    bNF_re3804157879324367682nt_int: ( int > code_integer > $o ) > ( int > int > $o ) > ( int > int ) > ( code_integer > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001t__Num__Onum_001t__Num__Onum,type,
    bNF_re6718328864250387230um_num: ( int > code_integer > $o ) > ( num > num > $o ) > ( int > num ) > ( code_integer > num ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001_062_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Int__Oint_Mt__Int__Oint_J,type,
    bNF_re711492959462206631nt_int: ( int > int > $o ) > ( ( int > int ) > ( int > int ) > $o ) > ( int > int > int ) > ( int > int > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001_062_It__Int__Oint_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Int__Oint_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    bNF_re157797125943740599nt_int: ( int > int > $o ) > ( ( int > product_prod_int_int ) > ( int > product_prod_int_int ) > $o ) > ( int > int > product_prod_int_int ) > ( int > int > product_prod_int_int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001_062_It__Int__Oint_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Int__Oint_Mt__Rat__Orat_J,type,
    bNF_re3461391660133120880nt_rat: ( int > int > $o ) > ( ( int > product_prod_int_int ) > ( int > rat ) > $o ) > ( int > int > product_prod_int_int ) > ( int > int > rat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    bNF_re982302072995117890nteger: ( int > int > $o ) > ( int > code_integer > $o ) > ( int > int ) > ( int > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    bNF_re4712519889275205905nt_int: ( int > int > $o ) > ( int > int > $o ) > ( int > int ) > ( int > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Num__Onum_001t__Num__Onum,type,
    bNF_re7626690874201225453um_num: ( int > int > $o ) > ( num > num > $o ) > ( int > num ) > ( int > num ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    bNF_re6250860962936578807nt_int: ( int > int > $o ) > ( product_prod_int_int > product_prod_int_int > $o ) > ( int > product_prod_int_int ) > ( int > product_prod_int_int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat,type,
    bNF_re2214769303045360666nt_rat: ( int > int > $o ) > ( product_prod_int_int > rat > $o ) > ( int > product_prod_int_int ) > ( int > rat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__Code____Numeral__Ointeger_J_001t__List__Olist_It__Code____Numeral__Ointeger_J_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J,type,
    bNF_re5828396963709814525t_char: ( list_Code_integer > list_Code_integer > $o ) > ( list_char > list_char > $o ) > ( list_Code_integer > list_char ) > ( list_Code_integer > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__Code____Numeral__Ointeger_J_001t__List__Olist_It__Code____Numeral__Ointeger_J_001t__List__Olist_It__String__Ochar_J_001t__String__Oliteral,type,
    bNF_re3035051291559180600iteral: ( list_Code_integer > list_Code_integer > $o ) > ( list_char > literal > $o ) > ( list_Code_integer > list_char ) > ( list_Code_integer > literal ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J_001_062_It__List__Olist_It__String__Ochar_J_M_Eo_J_001_062_It__List__Olist_It__String__Ochar_J_M_Eo_J,type,
    bNF_re7775871201573978401char_o: ( list_char > list_char > $o ) > ( ( list_char > $o ) > ( list_char > $o ) > $o ) > ( list_char > list_char > $o ) > ( list_char > list_char > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J_001_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_001_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J,type,
    bNF_re7399511318543894245t_char: ( list_char > list_char > $o ) > ( ( list_char > list_char ) > ( list_char > list_char ) > $o ) > ( list_char > list_char > list_char ) > ( list_char > list_char > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J_001_Eo_001_Eo,type,
    bNF_re6668474094832959905ar_o_o: ( list_char > list_char > $o ) > ( $o > $o > $o ) > ( list_char > $o ) > ( list_char > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__Code____Numeral__Ointeger_J_001t__List__Olist_It__Code____Numeral__Ointeger_J,type,
    bNF_re901197953848981245nteger: ( list_char > list_char > $o ) > ( list_Code_integer > list_Code_integer > $o ) > ( list_char > list_Code_integer ) > ( list_char > list_Code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J,type,
    bNF_re1407854171455731685t_char: ( list_char > list_char > $o ) > ( list_char > list_char > $o ) > ( list_char > list_char ) > ( list_char > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J_001t__Nat__Onat_001t__Nat__Onat,type,
    bNF_re76688982720252355at_nat: ( list_char > list_char > $o ) > ( nat > nat > $o ) > ( list_char > nat ) > ( list_char > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__String__Ochar_J_001t__String__Oliteral_001_062_It__List__Olist_It__String__Ochar_J_M_Eo_J_001_062_It__String__Oliteral_M_Eo_J,type,
    bNF_re7831395832754058691eral_o: ( list_char > literal > $o ) > ( ( list_char > $o ) > ( literal > $o ) > $o ) > ( list_char > list_char > $o ) > ( literal > literal > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__String__Ochar_J_001t__String__Oliteral_001_Eo_001_Eo,type,
    bNF_re8730477052009823892al_o_o: ( list_char > literal > $o ) > ( $o > $o > $o ) > ( list_char > $o ) > ( literal > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__String__Ochar_J_001t__String__Oliteral_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J,type,
    bNF_re4991257583289732696t_char: ( list_char > literal > $o ) > ( list_char > list_char > $o ) > ( list_char > list_char ) > ( literal > list_char ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__List__Olist_It__String__Ochar_J_001t__String__Oliteral_001t__List__Olist_It__String__Ochar_J_001t__String__Oliteral,type,
    bNF_re5453467372598631581iteral: ( list_char > literal > $o ) > ( list_char > literal > $o ) > ( list_char > list_char ) > ( literal > literal ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    bNF_re1345281282404953727at_nat: ( nat > nat > $o ) > ( ( nat > nat ) > ( nat > nat ) > $o ) > ( nat > nat > nat ) > ( nat > nat > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    bNF_re5653821019739307937at_nat: ( nat > nat > $o ) > ( nat > nat > $o ) > ( nat > nat ) > ( nat > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    bNF_re6830278522597306478at_int: ( nat > nat > $o ) > ( product_prod_nat_nat > int > $o ) > ( nat > product_prod_nat_nat ) > ( nat > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Num__Onum_001t__Num__Onum_001_062_It__Num__Onum_Mt__Int__Oint_J_001_062_It__Num__Onum_Mt__Code____Numeral__Ointeger_J,type,
    bNF_re7876454716742015248nteger: ( num > num > $o ) > ( ( num > int ) > ( num > code_integer ) > $o ) > ( num > num > int ) > ( num > num > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Num__Onum_001t__Num__Onum_001_062_It__Num__Onum_Mt__Int__Oint_J_001_062_It__Num__Onum_Mt__Int__Oint_J,type,
    bNF_re8402795839162346335um_int: ( num > num > $o ) > ( ( num > int ) > ( num > int ) > $o ) > ( num > num > int ) > ( num > num > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Num__Onum_001t__Num__Onum_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    bNF_re6501075790457514782nteger: ( num > num > $o ) > ( int > code_integer > $o ) > ( num > int ) > ( num > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Num__Onum_001t__Num__Onum_001t__Int__Oint_001t__Int__Oint,type,
    bNF_re1822329894187522285nt_int: ( num > num > $o ) > ( int > int > $o ) > ( num > int ) > ( num > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    bNF_re5228765855967844073nt_int: ( product_prod_int_int > product_prod_int_int > $o ) > ( ( product_prod_int_int > product_prod_int_int ) > ( product_prod_int_int > product_prod_int_int ) > $o ) > ( product_prod_int_int > product_prod_int_int > product_prod_int_int ) > ( product_prod_int_int > product_prod_int_int > product_prod_int_int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_Eo_001_Eo,type,
    bNF_re8699439704749558557nt_o_o: ( product_prod_int_int > product_prod_int_int > $o ) > ( $o > $o > $o ) > ( product_prod_int_int > $o ) > ( product_prod_int_int > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    bNF_re7145576690424134365nt_int: ( product_prod_int_int > product_prod_int_int > $o ) > ( product_prod_int_int > product_prod_int_int > $o ) > ( product_prod_int_int > product_prod_int_int ) > ( product_prod_int_int > product_prod_int_int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat_001_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Rat__Orat_Mt__Rat__Orat_J,type,
    bNF_re7627151682743391978at_rat: ( product_prod_int_int > rat > $o ) > ( ( product_prod_int_int > product_prod_int_int ) > ( rat > rat ) > $o ) > ( product_prod_int_int > product_prod_int_int > product_prod_int_int ) > ( rat > rat > rat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat_001_Eo_001_Eo,type,
    bNF_re1494630372529172596at_o_o: ( product_prod_int_int > rat > $o ) > ( $o > $o > $o ) > ( product_prod_int_int > $o ) > ( rat > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat,type,
    bNF_re8279943556446156061nt_rat: ( product_prod_int_int > rat > $o ) > ( product_prod_int_int > rat > $o ) > ( product_prod_int_int > product_prod_int_int ) > ( rat > rat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J_001_062_It__Int__Oint_M_Eo_J,type,
    bNF_re717283939379294677_int_o: ( product_prod_nat_nat > int > $o ) > ( ( product_prod_nat_nat > $o ) > ( int > $o ) > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( int > int > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001_062_It__Int__Oint_Mt__Int__Oint_J,type,
    bNF_re7408651293131936558nt_int: ( product_prod_nat_nat > int > $o ) > ( ( product_prod_nat_nat > product_prod_nat_nat ) > ( int > int ) > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ) > ( int > int > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint_001_Eo_001_Eo,type,
    bNF_re6644619430987730960nt_o_o: ( product_prod_nat_nat > int > $o ) > ( $o > $o > $o ) > ( product_prod_nat_nat > $o ) > ( int > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint_001t__Nat__Onat_001t__Nat__Onat,type,
    bNF_re4555766996558763186at_nat: ( product_prod_nat_nat > int > $o ) > ( nat > nat > $o ) > ( product_prod_nat_nat > nat ) > ( int > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    bNF_re7400052026677387805at_int: ( product_prod_nat_nat > int > $o ) > ( product_prod_nat_nat > int > $o ) > ( product_prod_nat_nat > product_prod_nat_nat ) > ( int > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J,type,
    bNF_re4202695980764964119_nat_o: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( ( product_prod_nat_nat > $o ) > ( product_prod_nat_nat > $o ) > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    bNF_re3099431351363272937at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( ( product_prod_nat_nat > product_prod_nat_nat ) > ( product_prod_nat_nat > product_prod_nat_nat ) > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ) > ( product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_Eo_001_Eo,type,
    bNF_re3666534408544137501at_o_o: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( $o > $o > $o ) > ( product_prod_nat_nat > $o ) > ( product_prod_nat_nat > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat_001t__Nat__Onat,type,
    bNF_re8246922863344978751at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( nat > nat > $o ) > ( product_prod_nat_nat > nat ) > ( product_prod_nat_nat > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    bNF_re7934895593101944656at_int: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > int > $o ) > ( product_prod_nat_nat > product_prod_nat_nat ) > ( product_prod_nat_nat > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    bNF_re2241393799969408733at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > product_prod_nat_nat ) > ( product_prod_nat_nat > product_prod_nat_nat ) > $o ).

thf(sy_c_BNF__Wellorder__Constructions_OordIso_001_Eo_001_Eo,type,
    bNF_We2654380646378065620so_o_o: set_Pr1932065953672099015od_o_o ).

thf(sy_c_BNF__Wellorder__Constructions_OordIso_001t__Nat__Onat_001t__Nat__Onat,type,
    bNF_We5258908940166488438at_nat: set_Pr4329608150637261639at_nat ).

thf(sy_c_BNF__Wellorder__Constructions_OordLess_001_Eo_001t__Nat__Onat,type,
    bNF_We8182288985678559134_o_nat: set_Pr457366540195662369at_nat ).

thf(sy_c_BNF__Wellorder__Relation_Owo__rel_001t__Nat__Onat,type,
    bNF_We3818239936649020644el_nat: set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_Basic__BNF__LFPs_Oprod_Osize__prod_001t__Int__Oint_001t__Int__Oint,type,
    basic_1872990034501187214nt_int: ( int > nat ) > ( int > nat ) > product_prod_int_int > nat ).

thf(sy_c_Basic__BNF__LFPs_Oprod_Osize__prod_001t__Nat__Onat_001t__Nat__Onat,type,
    basic_876126793109182934at_nat: ( nat > nat ) > ( nat > nat ) > product_prod_nat_nat > nat ).

thf(sy_c_Basic__BNFs_Opred__prod_001t__Int__Oint_001t__Int__Oint,type,
    basic_1567116559311922317nt_int: ( int > $o ) > ( int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Basic__BNFs_Opred__prod_001t__Nat__Onat_001t__Nat__Onat,type,
    basic_570253317919918037at_nat: ( nat > $o ) > ( nat > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Basic__BNFs_Orel__prod_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    basic_4387203522000727145nt_int: ( int > int > $o ) > ( int > int > $o ) > product_prod_int_int > product_prod_int_int > $o ).

thf(sy_c_Basic__BNFs_Orel__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    basic_5328504652464829177at_nat: ( nat > nat > $o ) > ( nat > nat > $o ) > product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Binomial_Obinomial,type,
    binomial: nat > nat > nat ).

thf(sy_c_Binomial_Ogbinomial_001t__Code____Numeral__Ointeger,type,
    gbinom8545251970709558553nteger: code_integer > nat > code_integer ).

thf(sy_c_Binomial_Ogbinomial_001t__Code____Numeral__Onatural,type,
    gbinom7368847122466276068atural: code_natural > nat > code_natural ).

thf(sy_c_Binomial_Ogbinomial_001t__Int__Oint,type,
    gbinomial_int: int > nat > int ).

thf(sy_c_Binomial_Ogbinomial_001t__Nat__Onat,type,
    gbinomial_nat: nat > nat > nat ).

thf(sy_c_Binomial_Ogbinomial_001t__Rat__Orat,type,
    gbinomial_rat: rat > nat > rat ).

thf(sy_c_Bit__Operations_Oand__int__rel,type,
    bit_and_int_rel: product_prod_int_int > product_prod_int_int > $o ).

thf(sy_c_Bit__Operations_Oand__not__num,type,
    bit_and_not_num: num > num > option_num ).

thf(sy_c_Bit__Operations_Oring__bit__operations__class_Onot_001t__Int__Oint,type,
    bit_ri7919022796975470100ot_int: int > int ).

thf(sy_c_Bit__Operations_Oring__bit__operations__class_Osigned__take__bit_001t__Code____Numeral__Ointeger,type,
    bit_ri6519982836138164636nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Oring__bit__operations__class_Osigned__take__bit_001t__Int__Oint,type,
    bit_ri631733984087533419it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oand_001t__Code____Numeral__Ointeger,type,
    bit_se3949692690581998587nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oand_001t__Code____Numeral__Onatural,type,
    bit_se2773287842338716102atural: code_natural > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oand_001t__Int__Oint,type,
    bit_se725231765392027082nd_int: int > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oand_001t__Nat__Onat,type,
    bit_se727722235901077358nd_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Odrop__bit_001t__Code____Numeral__Ointeger,type,
    bit_se3928097537394005634nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Odrop__bit_001t__Code____Numeral__Onatural,type,
    bit_se2751692689150723149atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Odrop__bit_001t__Int__Oint,type,
    bit_se8568078237143864401it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Odrop__bit_001t__Nat__Onat,type,
    bit_se8570568707652914677it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oflip__bit_001t__Code____Numeral__Ointeger,type,
    bit_se1345352211410354436nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oflip__bit_001t__Code____Numeral__Onatural,type,
    bit_se168947363167071951atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oflip__bit_001t__Int__Oint,type,
    bit_se2159334234014336723it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oflip__bit_001t__Nat__Onat,type,
    bit_se2161824704523386999it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Omask_001t__Code____Numeral__Ointeger,type,
    bit_se2119862282449309892nteger: nat > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Omask_001t__Code____Numeral__Onatural,type,
    bit_se943457434206027407atural: nat > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Omask_001t__Int__Oint,type,
    bit_se2000444600071755411sk_int: nat > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Omask_001t__Nat__Onat,type,
    bit_se2002935070580805687sk_nat: nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oor_001t__Code____Numeral__Ointeger,type,
    bit_se1080825931792720795nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oor_001t__Code____Numeral__Onatural,type,
    bit_se9127793120404214118atural: code_natural > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oor_001t__Int__Oint,type,
    bit_se1409905431419307370or_int: int > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oor_001t__Nat__Onat,type,
    bit_se1412395901928357646or_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Opush__bit_001t__Code____Numeral__Ointeger,type,
    bit_se7788150548672797655nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Opush__bit_001t__Code____Numeral__Onatural,type,
    bit_se6611745700429515170atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Opush__bit_001t__Int__Oint,type,
    bit_se545348938243370406it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Opush__bit_001t__Nat__Onat,type,
    bit_se547839408752420682it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oset__bit_001t__Code____Numeral__Ointeger,type,
    bit_se2793503036327961859nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oset__bit_001t__Code____Numeral__Onatural,type,
    bit_se1617098188084679374atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oset__bit_001t__Int__Oint,type,
    bit_se7879613467334960850it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oset__bit_001t__Nat__Onat,type,
    bit_se7882103937844011126it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Otake__bit_001t__Code____Numeral__Ointeger,type,
    bit_se1745604003318907178nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Otake__bit_001t__Code____Numeral__Onatural,type,
    bit_se569199155075624693atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Otake__bit_001t__Int__Oint,type,
    bit_se2923211474154528505it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Otake__bit_001t__Nat__Onat,type,
    bit_se2925701944663578781it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Ounset__bit_001t__Code____Numeral__Ointeger,type,
    bit_se8260200283734997820nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Ounset__bit_001t__Code____Numeral__Onatural,type,
    bit_se7083795435491715335atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Ounset__bit_001t__Int__Oint,type,
    bit_se4203085406695923979it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Ounset__bit_001t__Nat__Onat,type,
    bit_se4205575877204974255it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oxor_001t__Code____Numeral__Ointeger,type,
    bit_se3222712562003087583nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oxor_001t__Code____Numeral__Onatural,type,
    bit_se2046307713759805098atural: code_natural > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oxor_001t__Int__Oint,type,
    bit_se6526347334894502574or_int: int > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oxor_001t__Nat__Onat,type,
    bit_se6528837805403552850or_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bits__class_Obit_001t__Code____Numeral__Ointeger,type,
    bit_se9216721137139052372nteger: code_integer > nat > $o ).

thf(sy_c_Bit__Operations_Osemiring__bits__class_Obit_001t__Code____Numeral__Onatural,type,
    bit_se8040316288895769887atural: code_natural > nat > $o ).

thf(sy_c_Bit__Operations_Osemiring__bits__class_Obit_001t__Int__Oint,type,
    bit_se1146084159140164899it_int: int > nat > $o ).

thf(sy_c_Bit__Operations_Osemiring__bits__class_Obit_001t__Nat__Onat,type,
    bit_se1148574629649215175it_nat: nat > nat > $o ).

thf(sy_c_Bit__Operations_Otake__bit__num,type,
    bit_take_bit_num: nat > num > option_num ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations__class_Oand__num,type,
    bit_un7362597486090784418nd_num: num > num > option_num ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations__class_Oxor__num,type,
    bit_un2480387367778600638or_num: num > num > option_num ).

thf(sy_c_Code__Numeral_Obit__cut__integer,type,
    code_bit_cut_integer: code_integer > produc6271795597528267376eger_o ).

thf(sy_c_Code__Numeral_Ocr__integer,type,
    code_cr_integer: int > code_integer > $o ).

thf(sy_c_Code__Numeral_Ocr__natural,type,
    code_cr_natural: nat > code_natural > $o ).

thf(sy_c_Code__Numeral_Odivmod__abs,type,
    code_divmod_abs: code_integer > code_integer > produc8923325533196201883nteger ).

thf(sy_c_Code__Numeral_Odivmod__integer,type,
    code_divmod_integer: code_integer > code_integer > produc8923325533196201883nteger ).

thf(sy_c_Code__Numeral_Odup,type,
    code_dup: code_integer > code_integer ).

thf(sy_c_Code__Numeral_Ointeger_Oint__of__integer,type,
    code_int_of_integer: code_integer > int ).

thf(sy_c_Code__Numeral_Ointeger_Ointeger__of__int,type,
    code_integer_of_int: int > code_integer ).

thf(sy_c_Code__Numeral_Ointeger__of__nat,type,
    code_integer_of_nat: nat > code_integer ).

thf(sy_c_Code__Numeral_Ointeger__of__num,type,
    code_integer_of_num: num > code_integer ).

thf(sy_c_Code__Numeral_Onat__of__integer,type,
    code_nat_of_integer: code_integer > nat ).

thf(sy_c_Code__Numeral_Onatural_Onat__of__natural,type,
    code_nat_of_natural: code_natural > nat ).

thf(sy_c_Code__Numeral_Onatural_Onatural__of__nat,type,
    code_natural_of_nat: nat > code_natural ).

thf(sy_c_Code__Numeral_Onegative,type,
    code_negative: num > code_integer ).

thf(sy_c_Code__Numeral_Onum__of__integer,type,
    code_num_of_integer: code_integer > num ).

thf(sy_c_Code__Numeral_Opcr__integer,type,
    code_pcr_integer: int > code_integer > $o ).

thf(sy_c_Code__Numeral_Osub,type,
    code_sub: num > num > code_integer ).

thf(sy_c_Complete__Lattices_OInf__class_OInf_001t__Nat__Onat,type,
    complete_Inf_Inf_nat: set_nat > nat ).

thf(sy_c_Complete__Lattices_OInf__class_OInf_001t__Product____Type__Ounit,type,
    comple2584293577114468500t_unit: set_Product_unit > product_unit ).

thf(sy_c_Complete__Lattices_OInf__class_OInf_001t__Set__Oset_It__Nat__Onat_J,type,
    comple7806235888213564991et_nat: set_set_nat > set_nat ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Int__Oint,type,
    complete_Sup_Sup_int: set_int > int ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Nat__Onat,type,
    complete_Sup_Sup_nat: set_nat > nat ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Product____Type__Ounit,type,
    comple4687483117567863418t_unit: set_Product_unit > product_unit ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__Nat__Onat_J,type,
    comple7399068483239264473et_nat: set_set_nat > set_nat ).

thf(sy_c_Countable_Onat__to__rat__surj,type,
    nat_to_rat_surj: nat > rat ).

thf(sy_c_Divides_Oadjust__div,type,
    adjust_div: product_prod_int_int > int ).

thf(sy_c_Divides_Odivmod__nat,type,
    divmod_nat: nat > nat > product_prod_nat_nat ).

thf(sy_c_Divides_Oeucl__rel__int,type,
    eucl_rel_int: int > int > product_prod_int_int > $o ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivides__aux_001t__Code____Numeral__Ointeger,type,
    unique5706413561485394159nteger: produc8923325533196201883nteger > $o ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivides__aux_001t__Int__Oint,type,
    unique6319869463603278526ux_int: product_prod_int_int > $o ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivides__aux_001t__Nat__Onat,type,
    unique6322359934112328802ux_nat: product_prod_nat_nat > $o ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod_001t__Code____Numeral__Ointeger,type,
    unique3479559517661332726nteger: num > num > produc8923325533196201883nteger ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod_001t__Int__Oint,type,
    unique5052692396658037445od_int: num > num > product_prod_int_int ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod_001t__Nat__Onat,type,
    unique5055182867167087721od_nat: num > num > product_prod_nat_nat ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod__step_001t__Code____Numeral__Ointeger,type,
    unique4921790084139445826nteger: num > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod__step_001t__Int__Oint,type,
    unique5024387138958732305ep_int: num > product_prod_int_int > product_prod_int_int ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod__step_001t__Nat__Onat,type,
    unique5026877609467782581ep_nat: num > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Equiv__Relations_Oequivp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    equiv_749116872481872345at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > $o ).

thf(sy_c_Euclidean__Division_Oeuclidean__semiring__class_Oeuclidean__size_001t__Int__Oint,type,
    euclid4774559944035922753ze_int: int > nat ).

thf(sy_c_Euclidean__Division_Ounique__euclidean__semiring__class_Odivision__segment_001t__Nat__Onat,type,
    euclid3398187327856392827nt_nat: nat > nat ).

thf(sy_c_Factorial_Ocomm__semiring__1__class_Opochhammer_001t__Code____Numeral__Ointeger,type,
    comm_s8582702949713902594nteger: code_integer > nat > code_integer ).

thf(sy_c_Factorial_Ocomm__semiring__1__class_Opochhammer_001t__Code____Numeral__Onatural,type,
    comm_s7406298101470620109atural: code_natural > nat > code_natural ).

thf(sy_c_Factorial_Ocomm__semiring__1__class_Opochhammer_001t__Int__Oint,type,
    comm_s4660882817536571857er_int: int > nat > int ).

thf(sy_c_Factorial_Ocomm__semiring__1__class_Opochhammer_001t__Nat__Onat,type,
    comm_s4663373288045622133er_nat: nat > nat > nat ).

thf(sy_c_Factorial_Ocomm__semiring__1__class_Opochhammer_001t__Rat__Orat,type,
    comm_s4028243227959126397er_rat: rat > nat > rat ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Code____Numeral__Ointeger,type,
    semiri3624122377584611663nteger: nat > code_integer ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Code____Numeral__Onatural,type,
    semiri2447717529341329178atural: nat > code_natural ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Int__Oint,type,
    semiri1406184849735516958ct_int: nat > int ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Nat__Onat,type,
    semiri1408675320244567234ct_nat: nat > nat ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Rat__Orat,type,
    semiri773545260158071498ct_rat: nat > rat ).

thf(sy_c_Fields_Oinverse__class_Oinverse_001t__Rat__Orat,type,
    inverse_inverse_rat: rat > rat ).

thf(sy_c_Filter_Oat__top_001t__Nat__Onat,type,
    at_top_nat: filter_nat ).

thf(sy_c_Filter_Oeventually_001t__Nat__Onat,type,
    eventually_nat: ( nat > $o ) > filter_nat > $o ).

thf(sy_c_Filter_Oeventually_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    eventu1038000079068216329at_nat: ( product_prod_nat_nat > $o ) > filter1242075044329608583at_nat > $o ).

thf(sy_c_Filter_Ofilterlim_001t__Nat__Onat_001t__Set__Oset_It__Nat__Onat_J,type,
    filter3212408913953519116et_nat: ( nat > set_nat ) > filter_set_nat > filter_nat > $o ).

thf(sy_c_Filter_Ofinite__subsets__at__top_001t__Nat__Onat,type,
    finite3254316476582989077op_nat: set_nat > filter_set_nat ).

thf(sy_c_Filter_Oprod__filter_001t__Nat__Onat_001t__Nat__Onat,type,
    prod_filter_nat_nat: filter_nat > filter_nat > filter1242075044329608583at_nat ).

thf(sy_c_Finite__Set_Ocard_001t__Int__Oint,type,
    finite_card_int: set_int > nat ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_It__Int__Oint_J,type,
    finite_card_list_int: set_list_int > nat ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    finite7325466520557071688st_nat: set_list_list_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_It__Nat__Onat_J,type,
    finite_card_list_nat: set_list_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    finite249151656366948015at_nat: set_li5450038453877631591at_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_It__Product____Type__Ounit_J,type,
    finite3744894192721311803t_unit: set_li873732205721079667t_unit > nat ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_It__Set__Oset_It__Nat__Onat_J_J,type,
    finite5631907774883551598et_nat: set_list_set_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_It__String__Ochar_J,type,
    finite1726956870759998265t_char: set_list_char > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Nat__Onat,type,
    finite_card_nat: set_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    finite6756421564338198497nt_int: set_Pr958786334691620121nt_int > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    finite711546835091564841at_nat: set_Pr1261947904930325089at_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    finite3771342082235030671at_nat: set_Pr4329608150637261639at_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Product____Type__Ounit,type,
    finite410649719033368117t_unit: set_Product_unit > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Set__Oset_It__Int__Oint_J,type,
    finite_card_set_int: set_set_int > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    finite2364142230527598318st_nat: set_set_list_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Set__Oset_It__Nat__Onat_J,type,
    finite_card_set_nat: set_set_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    finite4053189226111446337nt_int: set_se6260736226359567993nt_int > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    finite4356350796350151305at_nat: set_se7855581050983116737at_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Set__Oset_It__Product____Type__Ounit_J,type,
    finite22775419188893461t_unit: set_set_Product_unit > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    finite1149291290879098388et_nat: set_set_set_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__String__Ochar,type,
    finite_card_char: set_char > nat ).

thf(sy_c_Finite__Set_Ofinite_001t__Int__Oint,type,
    finite_finite_int: set_int > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__List__Olist_It__Int__Oint_J,type,
    finite3922522038869484883st_int: set_list_int > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__List__Olist_It__Nat__Onat_J,type,
    finite8100373058378681591st_nat: set_list_nat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    finite500796754983035824at_nat: set_li5450038453877631591at_nat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__List__Olist_It__String__Ochar_J,type,
    finite3619747586194699384t_char: set_list_char > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Nat__Onat,type,
    finite_finite_nat: set_nat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    finite2998713641127702882nt_int: set_Pr958786334691620121nt_int > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    finite6177210948735845034at_nat: set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Product____Type__Ounit,type,
    finite4290736615968046902t_unit: set_Product_unit > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Rat__Orat,type,
    finite_finite_rat: set_rat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__Int__Oint_J,type,
    finite6197958912794628473et_int: set_set_int > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__Nat__Onat_J,type,
    finite1152437895449049373et_nat: set_set_nat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    finite8744585540193469122nt_int: set_se6260736226359567993nt_int > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    finite9047747110432174090at_nat: set_se7855581050983116737at_nat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__String__Ochar,type,
    finite_finite_char: set_char > $o ).

thf(sy_c_Fun_Obij__betw_001t__Nat__Onat_001t__Nat__Onat,type,
    bij_betw_nat_nat: ( nat > nat ) > set_nat > set_nat > $o ).

thf(sy_c_Fun_Ocomp_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Code____Numeral__Ointeger,type,
    comp_C2822359487432382964nteger: ( ( code_integer > code_integer ) > code_integer > code_integer ) > ( code_integer > code_integer > code_integer ) > code_integer > code_integer > code_integer ).

thf(sy_c_Fun_Ocomp_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    comp_C3983183376822107068nteger: ( ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger ) > ( ( code_integer > code_integer ) > code_integer > code_integer ) > ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Fun_Ocomp_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001t__Code____Numeral__Ointeger,type,
    comp_C8797469213163452608nteger: ( ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger ) > ( code_integer > code_integer > code_integer ) > code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Code____Numeral__Ointeger,type,
    comp_C2931745410781319416nteger: ( code_integer > code_integer > code_integer ) > ( code_integer > code_integer ) > code_integer > code_integer > code_integer ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001t__Code____Numeral__Ointeger,type,
    comp_C1593894019821074884nteger: ( code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger ) > ( code_integer > code_integer ) > code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    comp_C7449957260575251196nteger: ( code_integer > code_integer ) > ( code_integer > code_integer ) > code_integer > code_integer ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Num__Onum,type,
    comp_C3531382070062128313er_num: ( code_integer > code_integer ) > ( num > code_integer ) > num > code_integer ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    comp_C1043215000170864188nteger: ( code_integer > code_integer ) > ( produc8923325533196201883nteger > code_integer ) > produc8923325533196201883nteger > code_integer ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001t__Nat__Onat_001t__Nat__Onat,type,
    comp_C4049556595663050210at_nat: ( code_integer > nat ) > ( nat > code_integer ) > nat > nat ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001t__String__Ochar_001t__Code____Numeral__Ointeger,type,
    comp_C3856975138083468656nteger: ( code_integer > char ) > ( code_integer > code_integer ) > code_integer > char ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Code____Numeral__Ointeger_001t__Int__Oint,type,
    comp_i1585864551200866970er_int: ( int > code_integer ) > ( int > int ) > int > code_integer ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Code____Numeral__Onatural_001t__Int__Oint,type,
    comp_i6850693561888474213al_int: ( int > code_natural ) > ( int > int ) > int > code_natural ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    comp_int_int_int: ( int > int ) > ( int > int ) > int > int ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Int__Oint_001t__Nat__Onat,type,
    comp_int_int_nat: ( int > int ) > ( nat > int ) > nat > int ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    comp_i4330622015127193916nt_int: ( int > int ) > ( product_prod_int_int > int ) > product_prod_int_int > int ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Nat__Onat_001t__Int__Oint,type,
    comp_int_nat_int: ( int > nat ) > ( int > int ) > int > nat ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Nat__Onat_001t__Nat__Onat,type,
    comp_int_nat_nat: ( int > nat ) > ( nat > int ) > nat > nat ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Num__Onum_001t__Int__Oint,type,
    comp_int_num_int: ( int > num ) > ( int > int ) > int > num ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Num__Onum_001t__Nat__Onat,type,
    comp_int_num_nat: ( int > num ) > ( nat > int ) > nat > num ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    comp_i5941103828406351439nt_int: ( int > product_prod_int_int ) > ( product_prod_int_int > int ) > product_prod_int_int > product_prod_int_int ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Rat__Orat_001t__Int__Oint,type,
    comp_int_rat_int: ( int > rat ) > ( int > int ) > int > rat ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001_Eo_001t__Nat__Onat,type,
    comp_nat_o_nat: ( nat > $o ) > ( nat > nat ) > nat > $o ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Code____Numeral__Ointeger_001t__Nat__Onat,type,
    comp_n3898172953802868194er_nat: ( nat > code_integer ) > ( nat > nat ) > nat > code_integer ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Code____Numeral__Onatural_001t__Nat__Onat,type,
    comp_n9163001964490475437al_nat: ( nat > code_natural ) > ( nat > nat ) > nat > code_natural ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Int__Oint_001t__Int__Oint,type,
    comp_nat_int_int: ( nat > int ) > ( int > nat ) > int > int ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Int__Oint_001t__Nat__Onat,type,
    comp_nat_int_nat: ( nat > int ) > ( nat > nat ) > nat > int ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Nat__Onat_001t__Int__Oint,type,
    comp_nat_nat_int: ( nat > nat ) > ( int > nat ) > int > nat ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    comp_nat_nat_nat: ( nat > nat ) > ( nat > nat ) > nat > nat ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    comp_n2711240574518091068at_nat: ( nat > nat ) > ( product_prod_nat_nat > nat ) > product_prod_nat_nat > nat ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Num__Onum_001t__Int__Oint,type,
    comp_nat_num_int: ( nat > num ) > ( int > nat ) > int > num ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Num__Onum_001t__Nat__Onat,type,
    comp_nat_num_nat: ( nat > num ) > ( nat > nat ) > nat > num ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    comp_n829915685812334579at_nat: ( nat > product_prod_nat_nat ) > ( product_prod_nat_nat > nat ) > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Rat__Orat_001t__Nat__Onat,type,
    comp_nat_rat_nat: ( nat > rat ) > ( nat > nat ) > nat > rat ).

thf(sy_c_Fun_Ocomp_001t__Num__Onum_001t__Nat__Onat_001t__Int__Oint,type,
    comp_num_nat_int: ( num > nat ) > ( int > num ) > int > nat ).

thf(sy_c_Fun_Ocomp_001t__Num__Onum_001t__Nat__Onat_001t__Nat__Onat,type,
    comp_num_nat_nat: ( num > nat ) > ( nat > num ) > nat > nat ).

thf(sy_c_Fun_Ocomp_001t__Num__Onum_001t__Num__Onum_001t__Int__Oint,type,
    comp_num_num_int: ( num > num ) > ( int > num ) > int > num ).

thf(sy_c_Fun_Ocomp_001t__Num__Onum_001t__Num__Onum_001t__Nat__Onat,type,
    comp_num_num_nat: ( num > num ) > ( nat > num ) > nat > num ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_M_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    comp_P2923453866557446737e_term: ( produc8763457246119570046nteger > code_integer > option6357759511663192854e_term ) > ( produc1017113440723519068e_term > produc8763457246119570046nteger ) > produc1017113440723519068e_term > code_integer > option6357759511663192854e_term ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_M_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    comp_P5265141440952980950e_term: ( produc8763457246119570046nteger > produc8923325533196201883nteger ) > ( produc1017113440723519068e_term > produc8763457246119570046nteger ) > produc1017113440723519068e_term > produc8923325533196201883nteger ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_M_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    comp_P1875353012086385820e_term: ( produc7773217078559923341nt_int > int > option6357759511663192854e_term ) > ( produc3832618445565238089e_term > produc7773217078559923341nt_int ) > produc3832618445565238089e_term > int > option6357759511663192854e_term ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_M_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    comp_P5363713469694551954e_term: ( produc7773217078559923341nt_int > product_prod_int_int ) > ( produc3832618445565238089e_term > produc7773217078559923341nt_int ) > produc3832618445565238089e_term > product_prod_int_int ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_M_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    comp_P8650103696410638905e_term: ( produc1908205239877642774nteger > produc6241069584506657477e_term > option6357759511663192854e_term ) > ( produc998928222018024388e_term > produc1908205239877642774nteger ) > produc998928222018024388e_term > produc6241069584506657477e_term > option6357759511663192854e_term ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_M_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    comp_P1663382703091044646e_term: ( produc1908205239877642774nteger > produc8923325533196201883nteger ) > ( produc998928222018024388e_term > produc1908205239877642774nteger ) > produc998928222018024388e_term > produc8923325533196201883nteger ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_M_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    comp_P4560647100477330970e_term: ( produc989692990947075319atural > produc4972180933644002618e_term > option6357759511663192854e_term ) > ( produc8392782284284844111e_term > produc989692990947075319atural ) > produc8392782284284844111e_term > produc4972180933644002618e_term > option6357759511663192854e_term ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_M_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    comp_P3964586916483566246e_term: ( produc989692990947075319atural > produc7822875418678951345atural ) > ( produc8392782284284844111e_term > produc989692990947075319atural ) > produc8392782284284844111e_term > produc7822875418678951345atural ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_M_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    comp_P8577347034251779110e_term: ( produc2285326912895808259nt_int > produc8551481072490612790e_term > option6357759511663192854e_term ) > ( produc1821397396195235155e_term > produc2285326912895808259nt_int ) > produc1821397396195235155e_term > produc8551481072490612790e_term > option6357759511663192854e_term ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_M_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_J,type,
    comp_P4057098934159210662e_term: ( produc2285326912895808259nt_int > product_prod_int_int ) > ( produc1821397396195235155e_term > produc2285326912895808259nt_int ) > produc1821397396195235155e_term > product_prod_int_int ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    comp_P3428181540658402820nteger: ( produc8923325533196201883nteger > code_integer ) > ( produc8923325533196201883nteger > produc8923325533196201883nteger ) > produc8923325533196201883nteger > code_integer ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    comp_P5356232565778667509nt_int: ( product_prod_int_int > int ) > ( product_prod_int_int > product_prod_int_int ) > product_prod_int_int > int ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    comp_P1567445206330693457at_nat: ( product_prod_nat_nat > nat ) > ( product_prod_nat_nat > product_prod_nat_nat ) > product_prod_nat_nat > nat ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_001t__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J,type,
    comp_P3118722334806803912t_unit: ( produc8664842809031399944it_nat > option8956607266484857688it_nat ) > ( heap_e7401611519738050253t_unit > produc8664842809031399944it_nat ) > heap_e7401611519738050253t_unit > option8956607266484857688it_nat ).

thf(sy_c_Fun_Ocomp_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_001t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_001t__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J,type,
    comp_P8552900652980440422t_unit: ( produc3260487557148687353it_nat > option3562590408128118217it_nat ) > ( heap_e7401611519738050253t_unit > produc3260487557148687353it_nat ) > heap_e7401611519738050253t_unit > option3562590408128118217it_nat ).

thf(sy_c_Fun_Ocomp_001t__String__Ochar_001t__String__Ochar_001t__Code____Numeral__Ointeger,type,
    comp_c4562247934908617188nteger: ( char > char ) > ( code_integer > char ) > code_integer > char ).

thf(sy_c_Fun_Ocomp_001t__String__Ochar_001t__String__Ochar_001t__String__Ochar,type,
    comp_char_char_char: ( char > char ) > ( char > char ) > char > char ).

thf(sy_c_Fun_Oid_001_Eo,type,
    id_o: $o > $o ).

thf(sy_c_Fun_Oid_001t__Int__Oint,type,
    id_int: int > int ).

thf(sy_c_Fun_Oid_001t__List__Olist_It__Code____Numeral__Ointeger_J,type,
    id_list_Code_integer: list_Code_integer > list_Code_integer ).

thf(sy_c_Fun_Oid_001t__Nat__Onat,type,
    id_nat: nat > nat ).

thf(sy_c_Fun_Oid_001t__Num__Onum,type,
    id_num: num > num ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__Nat__Onat,type,
    inj_on_nat_nat: ( nat > nat ) > set_nat > $o ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__String__Ochar,type,
    inj_on_nat_char: ( nat > char ) > set_nat > $o ).

thf(sy_c_Fun_Omap__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J_J_J_J_J_J,type,
    map_fu1104370778922912482iteral: ( $o > $o ) > ( ( $o > $o > $o > $o > $o > $o > list_char > list_char ) > $o > $o > $o > $o > $o > $o > literal > literal ) > ( $o > $o > $o > $o > $o > $o > $o > list_char > list_char ) > $o > $o > $o > $o > $o > $o > $o > literal > literal ).

thf(sy_c_Fun_Omap__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J_J_J_J_J,type,
    map_fu7309004089335677210iteral: ( $o > $o ) > ( ( $o > $o > $o > $o > $o > list_char > list_char ) > $o > $o > $o > $o > $o > literal > literal ) > ( $o > $o > $o > $o > $o > $o > list_char > list_char ) > $o > $o > $o > $o > $o > $o > literal > literal ).

thf(sy_c_Fun_Omap__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J_J_J_J,type,
    map_fu1929762555066093878iteral: ( $o > $o ) > ( ( $o > $o > $o > $o > list_char > list_char ) > $o > $o > $o > $o > literal > literal ) > ( $o > $o > $o > $o > $o > list_char > list_char ) > $o > $o > $o > $o > $o > literal > literal ).

thf(sy_c_Fun_Omap__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J_J_J,type,
    map_fu5333924603067766298iteral: ( $o > $o ) > ( ( $o > $o > $o > list_char > list_char ) > $o > $o > $o > literal > literal ) > ( $o > $o > $o > $o > list_char > list_char ) > $o > $o > $o > $o > literal > literal ).

thf(sy_c_Fun_Omap__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J_001_062_I_Eo_M_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J_J,type,
    map_fu1888220742600445322iteral: ( $o > $o ) > ( ( $o > $o > list_char > list_char ) > $o > $o > literal > literal ) > ( $o > $o > $o > list_char > list_char ) > $o > $o > $o > literal > literal ).

thf(sy_c_Fun_Omap__fun_001_Eo_001_Eo_001_062_I_Eo_M_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_001_062_I_Eo_M_062_It__String__Oliteral_Mt__String__Oliteral_J_J,type,
    map_fu5700776415251466522iteral: ( $o > $o ) > ( ( $o > list_char > list_char ) > $o > literal > literal ) > ( $o > $o > list_char > list_char ) > $o > $o > literal > literal ).

thf(sy_c_Fun_Omap__fun_001_Eo_001_Eo_001_062_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_001_062_It__String__Oliteral_Mt__String__Oliteral_J,type,
    map_fu4627020735845646302iteral: ( $o > $o ) > ( ( list_char > list_char ) > literal > literal ) > ( $o > list_char > list_char ) > $o > literal > literal ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001_062_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    map_fu8272188784021352819nteger: ( code_integer > int ) > ( ( int > int ) > code_integer > code_integer ) > ( int > int > int ) > code_integer > code_integer > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    map_fu2599414010547811884nteger: ( code_integer > int ) > ( int > code_integer ) > ( int > int ) > code_integer > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001t__Num__Onum_001t__Num__Onum,type,
    map_fu1227494855608507351um_num: ( code_integer > int ) > ( num > num ) > ( int > num ) > code_integer > num ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Onatural_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    map_fu6549440983881763648atural: ( code_natural > nat ) > ( ( nat > nat ) > code_natural > code_natural ) > ( nat > nat > nat ) > code_natural > code_natural > code_natural ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Onatural_001t__Nat__Onat_001t__Nat__Onat_001t__Code____Numeral__Onatural,type,
    map_fu1239815594074539274atural: ( code_natural > nat ) > ( nat > code_natural ) > ( nat > nat ) > code_natural > code_natural ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Int__Oint_001_062_It__Int__Oint_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Int__Oint_Mt__Rat__Orat_J,type,
    map_fu7831380289885515383nt_rat: ( int > int ) > ( ( int > product_prod_int_int ) > int > rat ) > ( int > int > product_prod_int_int ) > int > int > rat ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat,type,
    map_fu3424225382358772769nt_rat: ( int > int ) > ( product_prod_int_int > rat ) > ( int > product_prod_int_int ) > int > rat ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J_001_062_It__Int__Oint_M_Eo_J,type,
    map_fu434086159418415080_int_o: ( int > product_prod_nat_nat ) > ( ( product_prod_nat_nat > $o ) > int > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > int > int > $o ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001_062_It__Int__Oint_Mt__Int__Oint_J,type,
    map_fu4960017516451851995nt_int: ( int > product_prod_nat_nat ) > ( ( product_prod_nat_nat > product_prod_nat_nat ) > int > int ) > ( product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ) > int > int > int ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_Eo_001_Eo,type,
    map_fu4826362097070443709at_o_o: ( int > product_prod_nat_nat ) > ( $o > $o ) > ( product_prod_nat_nat > $o ) > int > $o ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat_001t__Nat__Onat,type,
    map_fu2345160673673942751at_nat: ( int > product_prod_nat_nat ) > ( nat > nat ) > ( product_prod_nat_nat > nat ) > int > nat ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    map_fu3667384564859982768at_int: ( int > product_prod_nat_nat ) > ( product_prod_nat_nat > int ) > ( product_prod_nat_nat > product_prod_nat_nat ) > int > int ).

thf(sy_c_Fun_Omap__fun_001t__List__Olist_It__Code____Numeral__Ointeger_J_001t__List__Olist_It__Code____Numeral__Ointeger_J_001t__List__Olist_It__String__Ochar_J_001t__String__Oliteral,type,
    map_fu9222038735678016191iteral: ( list_Code_integer > list_Code_integer ) > ( list_char > literal ) > ( list_Code_integer > list_char ) > list_Code_integer > literal ).

thf(sy_c_Fun_Omap__fun_001t__Num__Onum_001t__Num__Onum_001_062_It__Num__Onum_Mt__Int__Oint_J_001_062_It__Num__Onum_Mt__Code____Numeral__Ointeger_J,type,
    map_fu6891787308814931657nteger: ( num > num ) > ( ( num > int ) > num > code_integer ) > ( num > num > int ) > num > num > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Num__Onum_001t__Num__Onum_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    map_fu8638147718074629079nteger: ( num > num ) > ( int > code_integer ) > ( num > int ) > num > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Rat__Orat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Rat__Orat_Mt__Rat__Orat_J,type,
    map_fu4333342158222067775at_rat: ( rat > product_prod_int_int ) > ( ( product_prod_int_int > product_prod_int_int ) > rat > rat ) > ( product_prod_int_int > product_prod_int_int > product_prod_int_int ) > rat > rat > rat ).

thf(sy_c_Fun_Omap__fun_001t__Rat__Orat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_Eo_001_Eo,type,
    map_fu898904425404107465nt_o_o: ( rat > product_prod_int_int ) > ( $o > $o ) > ( product_prod_int_int > $o ) > rat > $o ).

thf(sy_c_Fun_Omap__fun_001t__Rat__Orat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat,type,
    map_fu5673905371560938248nt_rat: ( rat > product_prod_int_int ) > ( product_prod_int_int > rat ) > ( product_prod_int_int > product_prod_int_int ) > rat > rat ).

thf(sy_c_Fun_Omap__fun_001t__String__Oliteral_001t__List__Olist_It__String__Ochar_J_001_062_It__List__Olist_It__String__Ochar_J_M_Eo_J_001_062_It__String__Oliteral_M_Eo_J,type,
    map_fu2661873803724901240eral_o: ( literal > list_char ) > ( ( list_char > $o ) > literal > $o ) > ( list_char > list_char > $o ) > literal > literal > $o ).

thf(sy_c_Fun_Omap__fun_001t__String__Oliteral_001t__List__Olist_It__String__Ochar_J_001_Eo_001_Eo,type,
    map_fu6698795530259886495ar_o_o: ( literal > list_char ) > ( $o > $o ) > ( list_char > $o ) > literal > $o ).

thf(sy_c_Fun_Omap__fun_001t__String__Oliteral_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J_001t__String__Oliteral,type,
    map_fu7398138089906338514iteral: ( literal > list_char ) > ( list_char > literal ) > ( list_char > list_char ) > literal > literal ).

thf(sy_c_Fun__Def_Ois__measure_001t__Int__Oint,type,
    fun_is_measure_int: ( int > nat ) > $o ).

thf(sy_c_Fun__Def_Omax__strict,type,
    fun_max_strict: set_Pr4329608150637261639at_nat ).

thf(sy_c_Fun__Def_Omax__weak,type,
    fun_max_weak: set_Pr4329608150637261639at_nat ).

thf(sy_c_Fun__Def_Omin__strict,type,
    fun_min_strict: set_Pr4329608150637261639at_nat ).

thf(sy_c_Fun__Def_Omin__weak,type,
    fun_min_weak: set_Pr4329608150637261639at_nat ).

thf(sy_c_Fun__Def_Opair__leq,type,
    fun_pair_leq: set_Pr8693737435421807431at_nat ).

thf(sy_c_Fun__Def_Opair__less,type,
    fun_pair_less: set_Pr8693737435421807431at_nat ).

thf(sy_c_Fun__Def_Oreduction__pair_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    fun_re2478310338295953701at_nat: produc1319942482725812455at_nat > $o ).

thf(sy_c_GCD_OGcd__class_OGcd_001t__Int__Oint,type,
    gcd_Gcd_int: set_int > int ).

thf(sy_c_GCD_OGcd__class_OGcd_001t__Nat__Onat,type,
    gcd_Gcd_nat: set_nat > nat ).

thf(sy_c_GCD_OGcd__class_OLcm_001t__Int__Oint,type,
    gcd_Lcm_int: set_int > int ).

thf(sy_c_GCD_OGcd__class_OLcm_001t__Nat__Onat,type,
    gcd_Lcm_nat: set_nat > nat ).

thf(sy_c_GCD_Obezw,type,
    bezw: nat > nat > product_prod_int_int ).

thf(sy_c_GCD_Obezw__rel,type,
    bezw_rel: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_GCD_Ogcd__class_Ogcd_001t__Code____Numeral__Ointeger,type,
    gcd_gcd_Code_integer: code_integer > code_integer > code_integer ).

thf(sy_c_GCD_Ogcd__class_Ogcd_001t__Int__Oint,type,
    gcd_gcd_int: int > int > int ).

thf(sy_c_GCD_Ogcd__class_Ogcd_001t__Nat__Onat,type,
    gcd_gcd_nat: nat > nat > nat ).

thf(sy_c_GCD_Ogcd__class_Olcm_001t__Code____Numeral__Ointeger,type,
    gcd_lcm_Code_integer: code_integer > code_integer > code_integer ).

thf(sy_c_GCD_Ogcd__class_Olcm_001t__Int__Oint,type,
    gcd_lcm_int: int > int > int ).

thf(sy_c_GCD_Ogcd__class_Olcm_001t__Nat__Onat,type,
    gcd_lcm_nat: nat > nat > nat ).

thf(sy_c_GCD_Ogcd__nat__rel,type,
    gcd_nat_rel: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Groups_Oabs__class_Oabs_001t__Code____Numeral__Ointeger,type,
    abs_abs_Code_integer: code_integer > code_integer ).

thf(sy_c_Groups_Oabs__class_Oabs_001t__Int__Oint,type,
    abs_abs_int: int > int ).

thf(sy_c_Groups_Oabs__class_Oabs_001t__Rat__Orat,type,
    abs_abs_rat: rat > rat ).

thf(sy_c_Groups_Ocomm__monoid_001t__Nat__Onat,type,
    comm_monoid_nat: ( nat > nat > nat ) > nat > $o ).

thf(sy_c_Groups_Ogroup_001t__Code____Numeral__Ointeger,type,
    group_Code_integer: ( code_integer > code_integer > code_integer ) > code_integer > ( code_integer > code_integer ) > $o ).

thf(sy_c_Groups_Ogroup_001t__Int__Oint,type,
    group_int: ( int > int > int ) > int > ( int > int ) > $o ).

thf(sy_c_Groups_Ogroup_001t__Rat__Orat,type,
    group_rat: ( rat > rat > rat ) > rat > ( rat > rat ) > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001_062_It__Int__Oint_M_Eo_J,type,
    minus_minus_int_o: ( int > $o ) > ( int > $o ) > int > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001_062_It__Nat__Onat_M_Eo_J,type,
    minus_minus_nat_o: ( nat > $o ) > ( nat > $o ) > nat > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001_062_It__Set__Oset_It__Nat__Onat_J_M_Eo_J,type,
    minus_6910147592129066416_nat_o: ( set_nat > $o ) > ( set_nat > $o ) > set_nat > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001_062_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_M_Eo_J,type,
    minus_357216186751819389_int_o: ( set_Pr958786334691620121nt_int > $o ) > ( set_Pr958786334691620121nt_int > $o ) > set_Pr958786334691620121nt_int > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001_062_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_M_Eo_J,type,
    minus_7112847369788763957_nat_o: ( set_Pr1261947904930325089at_nat > $o ) > ( set_Pr1261947904930325089at_nat > $o ) > set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Code____Numeral__Ointeger,type,
    minus_8373710615458151222nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Code____Numeral__Onatural,type,
    minus_7197305767214868737atural: code_natural > code_natural > code_natural ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Int__Oint,type,
    minus_minus_int: int > int > int ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
    minus_minus_nat: nat > nat > nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Rat__Orat,type,
    minus_minus_rat: rat > rat > rat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Int__Oint_J,type,
    minus_minus_set_int: set_int > set_int > set_int ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    minus_7954133019191499631st_nat: set_list_nat > set_list_nat > set_list_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Nat__Onat_J,type,
    minus_minus_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    minus_1356011639430497352at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J,type,
    minus_3314409938677909166at_nat: set_Pr4329608150637261639at_nat > set_Pr4329608150637261639at_nat > set_Pr4329608150637261639at_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Product____Type__Ounit_J,type,
    minus_6452836326544984404t_unit: set_Product_unit > set_Product_unit > set_Product_unit ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    minus_2163939370556025621et_nat: set_set_nat > set_set_nat > set_set_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    minus_2612819937483484256nt_int: set_se6260736226359567993nt_int > set_se6260736226359567993nt_int > set_se6260736226359567993nt_int ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    minus_4207664762107033000at_nat: set_se7855581050983116737at_nat > set_se7855581050983116737at_nat > set_se7855581050983116737at_nat ).

thf(sy_c_Groups_Omonoid_001t__Nat__Onat,type,
    monoid_nat: ( nat > nat > nat ) > nat > $o ).

thf(sy_c_Groups_Oone__class_Oone_001t__Code____Numeral__Ointeger,type,
    one_one_Code_integer: code_integer ).

thf(sy_c_Groups_Oone__class_Oone_001t__Code____Numeral__Onatural,type,
    one_one_Code_natural: code_natural ).

thf(sy_c_Groups_Oone__class_Oone_001t__Int__Oint,type,
    one_one_int: int ).

thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Rat__Orat,type,
    one_one_rat: rat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Code____Numeral__Ointeger,type,
    plus_p5714425477246183910nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Code____Numeral__Onatural,type,
    plus_p4538020629002901425atural: code_natural > code_natural > code_natural ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Int__Oint,type,
    plus_plus_int: int > int > int ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat,type,
    plus_plus_nat: nat > nat > nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Num__Onum,type,
    plus_plus_num: num > num > num ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Rat__Orat,type,
    plus_plus_rat: rat > rat > rat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__String__Oliteral,type,
    plus_plus_literal: literal > literal > literal ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Code____Numeral__Ointeger,type,
    sgn_sgn_Code_integer: code_integer > code_integer ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Int__Oint,type,
    sgn_sgn_int: int > int ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Rat__Orat,type,
    sgn_sgn_rat: rat > rat ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Code____Numeral__Ointeger,type,
    times_3573771949741848930nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Code____Numeral__Onatural,type,
    times_2397367101498566445atural: code_natural > code_natural > code_natural ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Int__Oint,type,
    times_times_int: int > int > int ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Nat__Onat,type,
    times_times_nat: nat > nat > nat ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Num__Onum,type,
    times_times_num: num > num > num ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Rat__Orat,type,
    times_times_rat: rat > rat > rat ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Code____Numeral__Ointeger,type,
    uminus1351360451143612070nteger: code_integer > code_integer ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Int__Oint,type,
    uminus_uminus_int: int > int ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Product____Type__Ounit,type,
    uminus2952777764628376836t_unit: product_unit > product_unit ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Rat__Orat,type,
    uminus_uminus_rat: rat > rat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Code____Numeral__Ointeger,type,
    zero_z3403309356797280102nteger: code_integer ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Code____Numeral__Onatural,type,
    zero_z2226904508553997617atural: code_natural ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Int__Oint,type,
    zero_zero_int: int ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Rat__Orat,type,
    zero_zero_rat: rat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__String__Oliteral,type,
    zero_zero_literal: literal ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    groups7873554091576472773nteger: ( int > code_integer ) > set_int > code_integer ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Int__Oint_001t__Code____Numeral__Onatural,type,
    groups6697149243333190288atural: ( int > code_natural ) > set_int > code_natural ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Int__Oint_001t__Int__Oint,type,
    groups4538972089207619220nt_int: ( int > int ) > set_int > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Int__Oint_001t__Nat__Onat,type,
    groups4541462559716669496nt_nat: ( int > nat ) > set_int > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Int__Oint_001t__Rat__Orat,type,
    groups3906332499630173760nt_rat: ( int > rat ) > set_int > rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__List__Olist_It__Nat__Onat_J_001t__Nat__Onat,type,
    groups4396056296759096172at_nat: ( list_nat > nat ) > set_list_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Code____Numeral__Ointeger,type,
    groups7501900531339628137nteger: ( nat > code_integer ) > set_nat > code_integer ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Code____Numeral__Onatural,type,
    groups6325495683096345652atural: ( nat > code_natural ) > set_nat > code_natural ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Int__Oint,type,
    groups3539618377306564664at_int: ( nat > int ) > set_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Nat__Onat,type,
    groups3542108847815614940at_nat: ( nat > nat ) > set_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Rat__Orat,type,
    groups2906978787729119204at_rat: ( nat > rat ) > set_nat > rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    groups975429370522433651at_int: ( product_prod_nat_nat > int ) > set_Pr1261947904930325089at_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    groups977919841031483927at_nat: ( product_prod_nat_nat > nat ) > set_Pr1261947904930325089at_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Rat__Orat,type,
    groups342789780944988191at_rat: ( product_prod_nat_nat > rat ) > set_Pr1261947904930325089at_nat > rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Product____Type__Ounit_001t__Code____Numeral__Ointeger,type,
    groups5393439102872367408nteger: ( product_unit > code_integer ) > set_Product_unit > code_integer ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Product____Type__Ounit_001t__Int__Oint,type,
    groups8764306707065906943it_int: ( product_unit > int ) > set_Product_unit > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Product____Type__Ounit_001t__Nat__Onat,type,
    groups8766797177574957219it_nat: ( product_unit > nat ) > set_Product_unit > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Product____Type__Ounit_001t__Rat__Orat,type,
    groups8131667117488461483it_rat: ( product_unit > rat ) > set_Product_unit > rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Set__Oset_It__Nat__Onat_J_001t__Code____Numeral__Ointeger,type,
    groups9190459664516455967nteger: ( set_nat > code_integer ) > set_set_nat > code_integer ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Set__Oset_It__Nat__Onat_J_001t__Int__Oint,type,
    groups8292507037921071086at_int: ( set_nat > int ) > set_set_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Set__Oset_It__Nat__Onat_J_001t__Nat__Onat,type,
    groups8294997508430121362at_nat: ( set_nat > nat ) > set_set_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Set__Oset_It__Nat__Onat_J_001t__Rat__Orat,type,
    groups7659867448343625626at_rat: ( set_nat > rat ) > set_set_nat > rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001t__Int__Oint,type,
    groups182716853052024971nt_int: ( set_Pr958786334691620121nt_int > int ) > set_se6260736226359567993nt_int > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001t__Nat__Onat,type,
    groups185207323561075247nt_nat: ( set_Pr958786334691620121nt_int > nat ) > set_se6260736226359567993nt_int > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Code____Numeral__Ointeger,type,
    groups5114918151688220676nteger: ( set_Pr1261947904930325089at_nat > code_integer ) > set_se7855581050983116737at_nat > code_integer ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Int__Oint,type,
    groups178575644746855891at_int: ( set_Pr1261947904930325089at_nat > int ) > set_se7855581050983116737at_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Nat__Onat,type,
    groups181066115255906167at_nat: ( set_Pr1261947904930325089at_nat > nat ) > set_se7855581050983116737at_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Rat__Orat,type,
    groups8769308092024186239at_rat: ( set_Pr1261947904930325089at_nat > rat ) > set_se7855581050983116737at_nat > rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    groups3827104343326376752nteger: ( int > code_integer ) > set_int > code_integer ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Int__Oint_001t__Code____Numeral__Onatural,type,
    groups2650699495083094267atural: ( int > code_natural ) > set_int > code_natural ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Int__Oint_001t__Int__Oint,type,
    groups1705073143266064639nt_int: ( int > int ) > set_int > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Int__Oint_001t__Nat__Onat,type,
    groups1707563613775114915nt_nat: ( int > nat ) > set_int > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Int__Oint_001t__Rat__Orat,type,
    groups1072433553688619179nt_rat: ( int > rat ) > set_int > rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__List__Olist_It__Nat__Onat_J_001t__Int__Oint,type,
    groups2905156660866384563at_int: ( list_nat > int ) > set_list_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__List__Olist_It__Nat__Onat_J_001t__Nat__Onat,type,
    groups2907647131375434839at_nat: ( list_nat > nat ) > set_list_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Nat__Onat_001t__Code____Numeral__Ointeger,type,
    groups3455450783089532116nteger: ( nat > code_integer ) > set_nat > code_integer ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Nat__Onat_001t__Code____Numeral__Onatural,type,
    groups2279045934846249631atural: ( nat > code_natural ) > set_nat > code_natural ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Nat__Onat_001t__Int__Oint,type,
    groups705719431365010083at_int: ( nat > int ) > set_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Nat__Onat_001t__Nat__Onat,type,
    groups708209901874060359at_nat: ( nat > nat ) > set_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Nat__Onat_001t__Rat__Orat,type,
    groups73079841787564623at_rat: ( nat > rat ) > set_nat > rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Code____Numeral__Ointeger,type,
    groups1230400874837758585nteger: ( product_prod_nat_nat > code_integer ) > set_Pr1261947904930325089at_nat > code_integer ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    groups4075276357253098568at_int: ( product_prod_nat_nat > int ) > set_Pr1261947904930325089at_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    groups4077766827762148844at_nat: ( product_prod_nat_nat > nat ) > set_Pr1261947904930325089at_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Product____Type__Ounit_001t__Code____Numeral__Ointeger,type,
    groups8185359811944078981nteger: ( product_unit > code_integer ) > set_Product_unit > code_integer ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Product____Type__Ounit_001t__Code____Numeral__Onatural,type,
    groups7008954963700796496atural: ( product_unit > code_natural ) > set_Product_unit > code_natural ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Product____Type__Ounit_001t__Int__Oint,type,
    groups393930778517121108it_int: ( product_unit > int ) > set_Product_unit > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Product____Type__Ounit_001t__Nat__Onat,type,
    groups396421249026171384it_nat: ( product_unit > nat ) > set_Product_unit > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Product____Type__Ounit_001t__Rat__Orat,type,
    groups8984663225794451456it_rat: ( product_unit > rat ) > set_Product_unit > rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Set__Oset_It__Nat__Onat_J_001t__Code____Numeral__Ointeger,type,
    groups2761809935038513290nteger: ( set_nat > code_integer ) > set_set_nat > code_integer ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Set__Oset_It__Nat__Onat_J_001t__Int__Oint,type,
    groups4246057289670975065at_int: ( set_nat > int ) > set_set_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Set__Oset_It__Nat__Onat_J_001t__Nat__Onat,type,
    groups4248547760180025341at_nat: ( set_nat > nat ) > set_set_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Set__Oset_It__Nat__Onat_J_001t__Rat__Orat,type,
    groups3613417700093529605at_rat: ( set_nat > rat ) > set_set_nat > rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001t__Int__Oint,type,
    groups1216284892592621664nt_int: ( set_Pr958786334691620121nt_int > int ) > set_se6260736226359567993nt_int > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Int__Oint,type,
    groups1212143684287452584at_int: ( set_Pr1261947904930325089at_nat > int ) > set_se7855581050983116737at_nat > int ).

thf(sy_c_Groups__List_Omonoid__add__class_Osum__list_001t__Nat__Onat,type,
    groups4561878855575611511st_nat: list_nat > nat ).

thf(sy_c_HOL_ONO__MATCH_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    nO_MAT8252062027627875367nteger: code_integer > code_integer > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Code____Numeral__Ointeger_001t__Int__Oint,type,
    nO_MAT8427913294028938742er_int: code_integer > int > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Code____Numeral__Ointeger_001t__Nat__Onat,type,
    nO_MAT8430403764537989018er_nat: code_integer > nat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Code____Numeral__Ointeger_001t__Rat__Orat,type,
    nO_MAT7795273704451493282er_rat: code_integer > rat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    nO_MAT9066612773553876470nteger: int > code_integer > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Int__Oint_001t__Int__Oint,type,
    nO_MATCH_int_int: int > int > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Int__Oint_001t__Nat__Onat,type,
    nO_MATCH_int_nat: int > nat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Int__Oint_001t__Rat__Orat,type,
    nO_MATCH_int_rat: int > rat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Nat__Onat_001t__Code____Numeral__Ointeger,type,
    nO_MAT8694959213317031834nteger: nat > code_integer > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Nat__Onat_001t__Int__Oint,type,
    nO_MATCH_nat_int: nat > int > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Nat__Onat_001t__Nat__Onat,type,
    nO_MATCH_nat_nat: nat > nat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Nat__Onat_001t__Rat__Orat,type,
    nO_MATCH_nat_rat: nat > rat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Rat__Orat_001t__Int__Oint,type,
    nO_MATCH_rat_int: rat > int > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Rat__Orat_001t__Rat__Orat,type,
    nO_MATCH_rat_rat: rat > rat > $o ).

thf(sy_c_HOL_OThe_001t__Int__Oint,type,
    the_int: ( int > $o ) > int ).

thf(sy_c_HOL_OThe_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    the_Pr4378521158711661632nt_int: ( product_prod_int_int > $o ) > product_prod_int_int ).

thf(sy_c_HOL_Odefault__class_Odefault_001t__Product____Type__Ounit,type,
    defaul566961228789861419t_unit: product_unit ).

thf(sy_c_Heap__Time__Monad_OHeap_OHeap_001t__Product____Type__Ounit,type,
    heap_T6183433275982383450t_unit: ( heap_e7401611519738050253t_unit > option8956607266484857688it_nat ) > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_OHeap_OHeap_001tf__a,type,
    heap_Time_Heap_a2: ( heap_e7401611519738050253t_unit > option3562590408128118217it_nat ) > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_OHeap_Osize__Heap_001t__Product____Type__Ounit,type,
    heap_T4142866422068808505t_unit: ( product_unit > nat ) > heap_T5738788834812785303t_unit > nat ).

thf(sy_c_Heap__Time__Monad_Oassert_001t__Product____Type__Ounit,type,
    heap_T4208721593536448476t_unit: ( product_unit > $o ) > product_unit > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Oassert_001tf__a,type,
    heap_Time_assert_a: ( a > $o ) > a > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Obind_001t__Product____Type__Ounit_001t__Product____Type__Ounit,type,
    heap_T2633723481742716231t_unit: heap_T5738788834812785303t_unit > ( product_unit > heap_T5738788834812785303t_unit ) > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Obind_001t__Product____Type__Ounit_001tf__a,type,
    heap_T757603679106148408unit_a: heap_T5738788834812785303t_unit > ( product_unit > heap_Time_Heap_a ) > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Obind_001tf__a_001t__Product____Type__Ounit,type,
    heap_T8685611227969916822t_unit: heap_Time_Heap_a > ( a > heap_T5738788834812785303t_unit ) > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Obind_001tf__a_001tf__a,type,
    heap_Time_bind_a_a: heap_Time_Heap_a > ( a > heap_Time_Heap_a ) > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Oeffect_001t__Product____Type__Ounit,type,
    heap_T6553295506729943825t_unit: heap_T5738788834812785303t_unit > heap_e7401611519738050253t_unit > heap_e7401611519738050253t_unit > product_unit > nat > $o ).

thf(sy_c_Heap__Time__Monad_Oeffect_001tf__a,type,
    heap_Time_effect_a: heap_Time_Heap_a > heap_e7401611519738050253t_unit > heap_e7401611519738050253t_unit > a > nat > $o ).

thf(sy_c_Heap__Time__Monad_Oexecute_001t__Product____Type__Ounit,type,
    heap_T875086893843062177t_unit: heap_T5738788834812785303t_unit > heap_e7401611519738050253t_unit > option8956607266484857688it_nat ).

thf(sy_c_Heap__Time__Monad_Oexecute_001tf__a,type,
    heap_Time_execute_a: heap_Time_Heap_a > heap_e7401611519738050253t_unit > option3562590408128118217it_nat ).

thf(sy_c_Heap__Time__Monad_Oguard_001t__Product____Type__Ounit,type,
    heap_T8440541562793052209t_unit: ( heap_e7401611519738050253t_unit > $o ) > ( heap_e7401611519738050253t_unit > produc8664842809031399944it_nat ) > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Oguard_001tf__a,type,
    heap_Time_guard_a: ( heap_e7401611519738050253t_unit > $o ) > ( heap_e7401611519738050253t_unit > produc3260487557148687353it_nat ) > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Oheap_001t__Product____Type__Ounit,type,
    heap_T6927113302350381334t_unit: ( heap_e7401611519738050253t_unit > produc8664842809031399944it_nat ) > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Oheap_001tf__a,type,
    heap_Time_heap_a: ( heap_e7401611519738050253t_unit > produc3260487557148687353it_nat ) > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Oraise_001t__Product____Type__Ounit,type,
    heap_T2927564422264180874t_unit: list_char > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Oraise_001tf__a,type,
    heap_Time_raise_a: list_char > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Oreturn_001t__Product____Type__Ounit,type,
    heap_T7507251653302230130t_unit: product_unit > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Oreturn_001tf__a,type,
    heap_Time_return_a: a > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Osuccess_001t__Product____Type__Ounit,type,
    heap_T584514906347983379t_unit: heap_T5738788834812785303t_unit > heap_e7401611519738050253t_unit > $o ).

thf(sy_c_Heap__Time__Monad_Osuccess_001tf__a,type,
    heap_Time_success_a: heap_Time_Heap_a > heap_e7401611519738050253t_unit > $o ).

thf(sy_c_Heap__Time__Monad_Otap_001t__Product____Type__Ounit,type,
    heap_T560649228465745139t_unit: ( heap_e7401611519738050253t_unit > product_unit ) > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Otap_001tf__a,type,
    heap_Time_tap_a: ( heap_e7401611519738050253t_unit > a ) > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_OtimeFrame_001t__Product____Type__Ounit,type,
    heap_T3616969660504097270t_unit: nat > option8956607266484857688it_nat > option8956607266484857688it_nat ).

thf(sy_c_Heap__Time__Monad_OtimeFrame_001tf__a,type,
    heap_T7616092557645711335rame_a: nat > option3562590408128118217it_nat > option3562590408128118217it_nat ).

thf(sy_c_Heap__Time__Monad_OtimeFrame__rel_001t__Product____Type__Ounit,type,
    heap_T996182799752388649t_unit: produc3911288613690379145it_nat > produc3911288613690379145it_nat > $o ).

thf(sy_c_Heap__Time__Monad_OtimeFrame__rel_001tf__a,type,
    heap_T8132184524487034138_rel_a: produc4453839368661128058it_nat > produc4453839368661128058it_nat > $o ).

thf(sy_c_Heap__Time__Monad_Oureturn_001t__Product____Type__Ounit,type,
    heap_T4284346855313245393t_unit: product_unit > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Oureturn_001tf__a,type,
    heap_Time_ureturn_a: a > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Owait,type,
    heap_Time_wait: nat > heap_T5738788834812785303t_unit ).

thf(sy_c_If_001t__Code____Numeral__Ointeger,type,
    if_Code_integer: $o > code_integer > code_integer > code_integer ).

thf(sy_c_If_001t__Code____Numeral__Onatural,type,
    if_Code_natural: $o > code_natural > code_natural > code_natural ).

thf(sy_c_If_001t__Heap____Time____Monad__OHeap_Itf__a_J,type,
    if_Heap_Time_Heap_a: $o > heap_Time_Heap_a > heap_Time_Heap_a > heap_Time_Heap_a ).

thf(sy_c_If_001t__Int__Oint,type,
    if_int: $o > int > int > int ).

thf(sy_c_If_001t__Nat__Onat,type,
    if_nat: $o > nat > nat > nat ).

thf(sy_c_If_001t__Num__Onum,type,
    if_num: $o > num > num > num ).

thf(sy_c_If_001t__Option__Ooption_It__Num__Onum_J,type,
    if_option_num: $o > option_num > option_num > option_num ).

thf(sy_c_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    if_opt1729522071442692626it_nat: $o > option8956607266484857688it_nat > option8956607266484857688it_nat > option8956607266484857688it_nat ).

thf(sy_c_If_001t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    if_opt6883606601682554499it_nat: $o > option3562590408128118217it_nat > option3562590408128118217it_nat > option3562590408128118217it_nat ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J,type,
    if_Pro5737122678794959658eger_o: $o > produc6271795597528267376eger_o > produc6271795597528267376eger_o > produc6271795597528267376eger_o ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    if_Pro6119634080678213985nteger: $o > produc8923325533196201883nteger > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    if_Pro3027730157355071871nt_int: $o > product_prod_int_int > product_prod_int_int > product_prod_int_int ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    if_Pro6206227464963214023at_nat: $o > product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Predicate__Opred_It__Product____Type__Ounit_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    if_Pro3444522238938527101atural: $o > produc4675096598859438275atural > produc4675096598859438275atural > produc4675096598859438275atural ).

thf(sy_c_If_001t__Rat__Orat,type,
    if_rat: $o > rat > rat > rat ).

thf(sy_c_If_001t__Set__Oset_It__Nat__Onat_J,type,
    if_set_nat: $o > set_nat > set_nat > set_nat ).

thf(sy_c_Int_OAbs__Integ,type,
    abs_Integ: product_prod_nat_nat > int ).

thf(sy_c_Int_ONeg,type,
    neg: num > int ).

thf(sy_c_Int_OPos,type,
    pos: num > int ).

thf(sy_c_Int_ORep__Integ,type,
    rep_Integ: int > product_prod_nat_nat ).

thf(sy_c_Int_Ocr__int,type,
    cr_int: product_prod_nat_nat > int > $o ).

thf(sy_c_Int_Odup,type,
    dup: int > int ).

thf(sy_c_Int_Oint_OAbs__int,type,
    abs_int: set_Pr1261947904930325089at_nat > int ).

thf(sy_c_Int_Oint_ORep__int,type,
    rep_int: int > set_Pr1261947904930325089at_nat ).

thf(sy_c_Int_Oint__ge__less__than,type,
    int_ge_less_than: int > set_Pr958786334691620121nt_int ).

thf(sy_c_Int_Oint__ge__less__than2,type,
    int_ge_less_than2: int > set_Pr958786334691620121nt_int ).

thf(sy_c_Int_Ointrel,type,
    intrel: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Int_Onat,type,
    nat2: int > nat ).

thf(sy_c_Int_Opcr__int,type,
    pcr_int: product_prod_nat_nat > int > $o ).

thf(sy_c_Int_Oring__1__class_OInts_001t__Code____Numeral__Ointeger,type,
    ring_11222124179247155820nteger: set_Code_integer ).

thf(sy_c_Int_Oring__1__class_OInts_001t__Int__Oint,type,
    ring_1_Ints_int: set_int ).

thf(sy_c_Int_Oring__1__class_OInts_001t__Rat__Orat,type,
    ring_1_Ints_rat: set_rat ).

thf(sy_c_Int_Oring__1__class_Oof__int_001t__Code____Numeral__Ointeger,type,
    ring_18347121197199848620nteger: int > code_integer ).

thf(sy_c_Int_Oring__1__class_Oof__int_001t__Int__Oint,type,
    ring_1_of_int_int: int > int ).

thf(sy_c_Int_Oring__1__class_Oof__int_001t__Rat__Orat,type,
    ring_1_of_int_rat: int > rat ).

thf(sy_c_Int_Osub,type,
    sub: num > num > int ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_It__List__Olist_It__String__Ochar_J_M_Eo_J,type,
    inf_inf_list_char_o: ( list_char > $o ) > ( list_char > $o ) > list_char > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_M_Eo_J,type,
    inf_in3604695632404883862_int_o: ( product_prod_int_int > $o ) > ( product_prod_int_int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Int__Oint,type,
    inf_inf_int: int > int > int ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Nat__Onat,type,
    inf_inf_nat: nat > nat > nat ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Product____Type__Ounit,type,
    inf_inf_Product_unit: product_unit > product_unit > product_unit ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    inf_in2572325071724192079at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Lattices_Osemilattice__neutr_001t__Nat__Onat,type,
    semila9081495762789891438tr_nat: ( nat > nat > nat ) > nat > $o ).

thf(sy_c_Lattices_Osemilattice__neutr__order_001t__Nat__Onat,type,
    semila1623282765462674594er_nat: ( nat > nat > nat ) > nat > ( nat > nat > $o ) > ( nat > nat > $o ) > $o ).

thf(sy_c_Lattices_Osemilattice__order_001t__Nat__Onat,type,
    semila1248733672344298208er_nat: ( nat > nat > nat ) > ( nat > nat > $o ) > ( nat > nat > $o ) > $o ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Int__Oint,type,
    sup_sup_int: int > int > int ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Nat__Onat,type,
    sup_sup_nat: nat > nat > nat ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Product____Type__Ounit,type,
    sup_sup_Product_unit: product_unit > product_unit > product_unit ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Nat__Onat_J,type,
    sup_sup_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J,type,
    sup_su5525570899277871387at_nat: set_Pr4329608150637261639at_nat > set_Pr4329608150637261639at_nat > set_Pr4329608150637261639at_nat ).

thf(sy_c_Lattices__Big_Olinorder__class_OMax_001t__Int__Oint,type,
    lattic8263393255366662781ax_int: set_int > int ).

thf(sy_c_Lattices__Big_Olinorder__class_OMax_001t__Nat__Onat,type,
    lattic8265883725875713057ax_nat: set_nat > nat ).

thf(sy_c_Lattices__Big_Osemilattice__neutr__set_OF_001t__Nat__Onat,type,
    lattic7826324295020591184_F_nat: ( nat > nat > nat ) > nat > set_nat > nat ).

thf(sy_c_Lifting_OQuotient_001t__List__Olist_It__String__Ochar_J_001t__String__Oliteral,type,
    quotie6109894551476798619iteral: ( list_char > list_char > $o ) > ( list_char > literal ) > ( literal > list_char ) > ( list_char > literal > $o ) > $o ).

thf(sy_c_Lifting_OQuotient_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    quotie1194848508323700631at_int: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > int ) > ( int > product_prod_nat_nat ) > ( product_prod_nat_nat > int > $o ) > $o ).

thf(sy_c_List_Oappend_001t__Nat__Onat,type,
    append_nat: list_nat > list_nat > list_nat ).

thf(sy_c_List_Oappend_001t__String__Ochar,type,
    append_char: list_char > list_char > list_char ).

thf(sy_c_List_Odistinct_001t__Int__Oint,type,
    distinct_int: list_int > $o ).

thf(sy_c_List_Odistinct_001t__List__Olist_It__Nat__Onat_J,type,
    distinct_list_nat: list_list_nat > $o ).

thf(sy_c_List_Odistinct_001t__Nat__Onat,type,
    distinct_nat: list_nat > $o ).

thf(sy_c_List_Odistinct_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    distin6923225563576452346at_nat: list_P6011104703257516679at_nat > $o ).

thf(sy_c_List_Odistinct_001t__Product____Type__Ounit,type,
    distin4812975378522102150t_unit: list_Product_unit > $o ).

thf(sy_c_List_Odistinct_001t__Set__Oset_It__Nat__Onat_J,type,
    distinct_set_nat: list_set_nat > $o ).

thf(sy_c_List_Odistinct_001t__String__Ochar,type,
    distinct_char: list_char > $o ).

thf(sy_c_List_Odrop_001t__Nat__Onat,type,
    drop_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Ofold_001t__Int__Oint_001t__Int__Oint,type,
    fold_int_int: ( int > int > int ) > list_int > int > int ).

thf(sy_c_List_Ofold_001t__Nat__Onat_001t__Nat__Onat,type,
    fold_nat_nat: ( nat > nat > nat ) > list_nat > nat > nat ).

thf(sy_c_List_Olast_001t__Nat__Onat,type,
    last_nat: list_nat > nat ).

thf(sy_c_List_Olinorder__class_Osort__key_001t__Int__Oint_001t__Int__Oint,type,
    linord1735203802627413978nt_int: ( int > int ) > list_int > list_int ).

thf(sy_c_List_Olinorder__class_Osort__key_001t__Nat__Onat_001t__Nat__Onat,type,
    linord738340561235409698at_nat: ( nat > nat ) > list_nat > list_nat ).

thf(sy_c_List_Olinorder__class_Osorted__list__of__set_001t__Nat__Onat,type,
    linord2614967742042102400et_nat: set_nat > list_nat ).

thf(sy_c_List_Olist_OCons_001t__Code____Numeral__Ointeger,type,
    cons_Code_integer: code_integer > list_Code_integer > list_Code_integer ).

thf(sy_c_List_Olist_OCons_001t__Int__Oint,type,
    cons_int: int > list_int > list_int ).

thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
    cons_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Olist_OCons_001t__String__Ochar,type,
    cons_char: char > list_char > list_char ).

thf(sy_c_List_Olist_ONil_001t__Int__Oint,type,
    nil_int: list_int ).

thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
    nil_nat: list_nat ).

thf(sy_c_List_Olist_ONil_001t__String__Ochar,type,
    nil_char: list_char ).

thf(sy_c_List_Olist_Olist__all2_001t__String__Ochar_001t__String__Ochar,type,
    list_all2_char_char: ( char > char > $o ) > list_char > list_char > $o ).

thf(sy_c_List_Olist_Olist__all_001t__String__Ochar,type,
    list_all_char: ( char > $o ) > list_char > $o ).

thf(sy_c_List_Olist_Omap_001t__Code____Numeral__Ointeger_001t__String__Ochar,type,
    map_Co843364623960961780r_char: ( code_integer > char ) > list_Code_integer > list_char ).

thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Nat__Onat,type,
    map_nat_nat: ( nat > nat ) > list_nat > list_nat ).

thf(sy_c_List_Olist_Omap_001t__String__Ochar_001t__Code____Numeral__Ointeger,type,
    map_ch5843194146513361140nteger: ( char > code_integer ) > list_char > list_Code_integer ).

thf(sy_c_List_Olist_Omap_001t__String__Ochar_001t__String__Ochar,type,
    map_char_char: ( char > char ) > list_char > list_char ).

thf(sy_c_List_Olist_Oset_001t__Int__Oint,type,
    set_int2: list_int > set_int ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Nat__Onat_J,type,
    set_list_nat2: list_list_nat > set_list_nat ).

thf(sy_c_List_Olist_Oset_001t__Nat__Onat,type,
    set_nat2: list_nat > set_nat ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    set_Pr5648618587558075414at_nat: list_P6011104703257516679at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Ounit,type,
    set_Product_unit2: list_Product_unit > set_Product_unit ).

thf(sy_c_List_Olist_Oset_001t__Set__Oset_It__Nat__Onat_J,type,
    set_set_nat2: list_set_nat > set_set_nat ).

thf(sy_c_List_Olist_Oset_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    set_se4746441305218329646nt_int: list_s8839374986383574687nt_int > set_se6260736226359567993nt_int ).

thf(sy_c_List_Olist_Oset_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    set_se5049602875457034614at_nat: list_s1210847774152347623at_nat > set_se7855581050983116737at_nat ).

thf(sy_c_List_Olist_Oset_001t__String__Ochar,type,
    set_char2: list_char > set_char ).

thf(sy_c_List_Olist_Osize__list_001t__Typerep__Otyperep,type,
    size_list_typerep: ( typerep > nat ) > list_typerep > nat ).

thf(sy_c_List_Onth_001t__Nat__Onat,type,
    nth_nat: list_nat > nat > nat ).

thf(sy_c_List_Oord_Olexordp_001t__String__Ochar,type,
    lexordp_char: ( char > char > $o ) > list_char > list_char > $o ).

thf(sy_c_List_Oord_Olexordp__eq_001t__String__Ochar,type,
    lexordp_eq_char: ( char > char > $o ) > list_char > list_char > $o ).

thf(sy_c_List_Otake_001t__Nat__Onat,type,
    take_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Oupt,type,
    upt: nat > nat > list_nat ).

thf(sy_c_List_Oupto,type,
    upto: int > int > list_int ).

thf(sy_c_List_Oupto__rel,type,
    upto_rel: product_prod_int_int > product_prod_int_int > $o ).

thf(sy_c_Nat_OSuc,type,
    suc: nat > nat ).

thf(sy_c_Nat_Ocompow_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    compow_nat_nat: nat > ( nat > nat ) > nat > nat ).

thf(sy_c_Nat_Onat_Ocase__nat_001_Eo,type,
    case_nat_o: $o > ( nat > $o ) > nat > $o ).

thf(sy_c_Nat_Onat_Ocase__nat_001t__Nat__Onat,type,
    case_nat_nat: nat > ( nat > nat ) > nat > nat ).

thf(sy_c_Nat_Onat_Ocase__nat_001t__Option__Ooption_It__Num__Onum_J,type,
    case_nat_option_num: option_num > ( nat > option_num ) > nat > option_num ).

thf(sy_c_Nat_Onat_Opred,type,
    pred: nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_ONats_001t__Code____Numeral__Ointeger,type,
    semiri2551628265256775642nteger: set_Code_integer ).

thf(sy_c_Nat_Osemiring__1__class_ONats_001t__Code____Numeral__Onatural,type,
    semiri1375223417013493157atural: set_Code_natural ).

thf(sy_c_Nat_Osemiring__1__class_ONats_001t__Int__Oint,type,
    semiring_1_Nats_int: set_int ).

thf(sy_c_Nat_Osemiring__1__class_ONats_001t__Nat__Onat,type,
    semiring_1_Nats_nat: set_nat ).

thf(sy_c_Nat_Osemiring__1__class_ONats_001t__Rat__Orat,type,
    semiring_1_Nats_rat: set_rat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Code____Numeral__Ointeger,type,
    semiri4939895301339042750nteger: nat > code_integer ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Code____Numeral__Onatural,type,
    semiri3763490453095760265atural: nat > code_natural ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Int__Oint,type,
    semiri1314217659103216013at_int: nat > int ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Nat__Onat,type,
    semiri1316708129612266289at_nat: nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Rat__Orat,type,
    semiri681578069525770553at_rat: nat > rat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat__aux_001t__Code____Numeral__Ointeger,type,
    semiri4055485073559036834nteger: ( code_integer > code_integer ) > nat > code_integer > code_integer ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat__aux_001t__Code____Numeral__Onatural,type,
    semiri2879080225315754349atural: ( code_natural > code_natural ) > nat > code_natural > code_natural ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat__aux_001t__Int__Oint,type,
    semiri8420488043553186161ux_int: ( int > int ) > nat > int > int ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat__aux_001t__Nat__Onat,type,
    semiri8422978514062236437ux_nat: ( nat > nat ) > nat > nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat__aux_001t__Rat__Orat,type,
    semiri7787848453975740701ux_rat: ( rat > rat ) > nat > rat > rat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Heap____Time____Monad__OHeap_It__Product____Type__Ounit_J,type,
    size_s1564113455978345259t_unit: heap_T5738788834812785303t_unit > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Int__Oint_J,type,
    size_size_list_int: list_int > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    size_s3023201423986296836st_nat: list_list_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Nat__Onat_J,type,
    size_size_list_nat: list_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    size_s5460976970255530739at_nat: list_P6011104703257516679at_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Ounit_J,type,
    size_s245203480648594047t_unit: list_Product_unit > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Set__Oset_It__Nat__Onat_J_J,type,
    size_s3254054031482475050et_nat: list_set_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    size_s7141307186832570123nt_int: list_s8839374986383574687nt_int > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    size_s8736152011456118867at_nat: list_s1210847774152347623at_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__String__Ochar_J,type,
    size_size_list_char: list_char > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Num__Onum,type,
    size_size_num: num > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_It__Num__Onum_J,type,
    size_size_option_num: option_num > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    size_s8766407808098229740it_nat: option8956607266484857688it_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    size_s2363601347547812957it_nat: option3562590408128118217it_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__String__Ochar,type,
    size_size_char: char > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__String__Oliteral,type,
    size_size_literal: literal > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Typerep__Otyperep,type,
    size_size_typerep: typerep > nat ).

thf(sy_c_Nat__Bijection_Oint__decode,type,
    nat_int_decode: nat > int ).

thf(sy_c_Nat__Bijection_Olist__decode,type,
    nat_list_decode: nat > list_nat ).

thf(sy_c_Nat__Bijection_Olist__decode__rel,type,
    nat_list_decode_rel: nat > nat > $o ).

thf(sy_c_Nat__Bijection_Olist__encode,type,
    nat_list_encode: list_nat > nat ).

thf(sy_c_Nat__Bijection_Olist__encode__rel,type,
    nat_list_encode_rel: list_nat > list_nat > $o ).

thf(sy_c_Nat__Bijection_Oprod__decode,type,
    nat_prod_decode: nat > product_prod_nat_nat ).

thf(sy_c_Nat__Bijection_Oprod__decode__aux,type,
    nat_prod_decode_aux: nat > nat > product_prod_nat_nat ).

thf(sy_c_Nat__Bijection_Oprod__decode__aux__rel,type,
    nat_pr5047031295181774490ux_rel: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Nat__Bijection_Oprod__encode,type,
    nat_prod_encode: product_prod_nat_nat > nat ).

thf(sy_c_Nat__Bijection_Oset__decode,type,
    nat_set_decode: nat > set_nat ).

thf(sy_c_Nat__Bijection_Oset__encode,type,
    nat_set_encode: set_nat > nat ).

thf(sy_c_Nat__Bijection_Osum__decode,type,
    nat_sum_decode: nat > sum_sum_nat_nat ).

thf(sy_c_Nat__Bijection_Osum__encode,type,
    nat_sum_encode: sum_sum_nat_nat > nat ).

thf(sy_c_Nat__Bijection_Otriangle,type,
    nat_triangle: nat > nat ).

thf(sy_c_Num_OBitM,type,
    bitM: num > num ).

thf(sy_c_Num_Oinc,type,
    inc: num > num ).

thf(sy_c_Num_Onat__of__num,type,
    nat_of_num: num > nat ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Code____Numeral__Ointeger,type,
    neg_nu8804712462038260780nteger: code_integer > code_integer ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Int__Oint,type,
    neg_numeral_dbl_int: int > int ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Rat__Orat,type,
    neg_numeral_dbl_rat: rat > rat ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__dec_001t__Code____Numeral__Ointeger,type,
    neg_nu7757733837767384882nteger: code_integer > code_integer ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__dec_001t__Int__Oint,type,
    neg_nu3811975205180677377ec_int: int > int ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__dec_001t__Rat__Orat,type,
    neg_nu3179335615603231917ec_rat: rat > rat ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__inc_001t__Code____Numeral__Ointeger,type,
    neg_nu5831290666863070958nteger: code_integer > code_integer ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__inc_001t__Int__Oint,type,
    neg_nu5851722552734809277nc_int: int > int ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__inc_001t__Rat__Orat,type,
    neg_nu5219082963157363817nc_rat: rat > rat ).

thf(sy_c_Num_Oneg__numeral__class_Ois__num_001t__Code____Numeral__Ointeger,type,
    neg_nu2435721316971906650nteger: code_integer > $o ).

thf(sy_c_Num_Oneg__numeral__class_Ois__num_001t__Int__Oint,type,
    neg_nu7441568979088483369um_int: int > $o ).

thf(sy_c_Num_Oneg__numeral__class_Ois__num_001t__Rat__Orat,type,
    neg_nu6808929389511037909um_rat: rat > $o ).

thf(sy_c_Num_Oneg__numeral__class_Osub_001t__Code____Numeral__Ointeger,type,
    neg_nu5755505904847501662nteger: num > num > code_integer ).

thf(sy_c_Num_Oneg__numeral__class_Osub_001t__Int__Oint,type,
    neg_numeral_sub_int: num > num > int ).

thf(sy_c_Num_Oneg__numeral__class_Osub_001t__Rat__Orat,type,
    neg_numeral_sub_rat: num > num > rat ).

thf(sy_c_Num_Onum_OBit0,type,
    bit0: num > num ).

thf(sy_c_Num_Onum_OBit1,type,
    bit1: num > num ).

thf(sy_c_Num_Onum_OOne,type,
    one: num ).

thf(sy_c_Num_Onum_Ocase__num_001t__Option__Ooption_It__Num__Onum_J,type,
    case_num_option_num: option_num > ( num > option_num ) > ( num > option_num ) > num > option_num ).

thf(sy_c_Num_Onum_Osize__num,type,
    size_num: num > nat ).

thf(sy_c_Num_Onum__of__nat,type,
    num_of_nat: nat > num ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Code____Numeral__Ointeger,type,
    numera6620942414471956472nteger: num > code_integer ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Code____Numeral__Onatural,type,
    numera5444537566228673987atural: num > code_natural ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Int__Oint,type,
    numeral_numeral_int: num > int ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Nat__Onat,type,
    numeral_numeral_nat: num > nat ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Rat__Orat,type,
    numeral_numeral_rat: num > rat ).

thf(sy_c_Num_Opred__numeral,type,
    pred_numeral: num > nat ).

thf(sy_c_Option_Ooption_ONone_001t__Num__Onum,type,
    none_num: option_num ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    none_P9117596204409417319it_nat: option8956607266484857688it_nat ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    none_P2651198173097904984it_nat: option3562590408128118217it_nat ).

thf(sy_c_Option_Ooption_OSome_001t__Num__Onum,type,
    some_num: num > option_num ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    some_P1914260805536162275it_nat: produc8664842809031399944it_nat > option8956607266484857688it_nat ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    some_P7913643980934408916it_nat: produc3260487557148687353it_nat > option3562590408128118217it_nat ).

thf(sy_c_Option_Ooption_Ocase__option_001_Eo_001t__Num__Onum,type,
    case_option_o_num: $o > ( num > $o ) > option_num > $o ).

thf(sy_c_Option_Ooption_Ocase__option_001_Eo_001t__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    case_o2686588417244861013it_nat: $o > ( produc8664842809031399944it_nat > $o ) > option8956607266484857688it_nat > $o ).

thf(sy_c_Option_Ooption_Ocase__option_001_Eo_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    case_o3267218206291580230it_nat: $o > ( produc3260487557148687353it_nat > $o ) > option3562590408128118217it_nat > $o ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Code____Numeral__Ointeger_001t__Num__Onum,type,
    case_o356765784539232260er_num: code_integer > ( num > code_integer ) > option_num > code_integer ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Code____Numeral__Onatural_001t__Num__Onum,type,
    case_o5621594795226839503al_num: code_natural > ( num > code_natural ) > option_num > code_natural ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Int__Oint_001t__Num__Onum,type,
    case_option_int_num: int > ( num > int ) > option_num > int ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Nat__Onat_001t__Num__Onum,type,
    case_option_nat_num: nat > ( num > nat ) > option_num > nat ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Num__Onum_001t__Num__Onum,type,
    case_option_num_num: num > ( num > num ) > option_num > num ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Num__Onum_J_001t__Num__Onum,type,
    case_o6005452278849405969um_num: option_num > ( num > option_num ) > option_num > option_num ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    case_o7727800614283616222it_nat: option8956607266484857688it_nat > ( produc3260487557148687353it_nat > option8956607266484857688it_nat ) > option3562590408128118217it_nat > option8956607266484857688it_nat ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    case_o6061097939050036047it_nat: option3562590408128118217it_nat > ( produc3260487557148687353it_nat > option3562590408128118217it_nat ) > option3562590408128118217it_nat > option3562590408128118217it_nat ).

thf(sy_c_Option_Ooption_Osize__option_001t__Num__Onum,type,
    size_option_num: ( num > nat ) > option_num > nat ).

thf(sy_c_Option_Ooption_Osize__option_001t__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    size_o29782932136985253it_nat: ( produc8664842809031399944it_nat > nat ) > option8956607266484857688it_nat > nat ).

thf(sy_c_Option_Ooption_Osize__option_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    size_o1731029420616209814it_nat: ( produc3260487557148687353it_nat > nat ) > option3562590408128118217it_nat > nat ).

thf(sy_c_Option_Ooption_Othe_001t__Num__Onum,type,
    the_num: option_num > num ).

thf(sy_c_Option_Ooption_Othe_001t__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    the_Pr7776125533777466484it_nat: option8956607266484857688it_nat > produc8664842809031399944it_nat ).

thf(sy_c_Option_Ooption_Othe_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    the_Pr3616839707675578981it_nat: option3562590408128118217it_nat > produc3260487557148687353it_nat ).

thf(sy_c_Order__Relation_OunderS_001t__Nat__Onat,type,
    order_underS_nat: set_Pr1261947904930325089at_nat > nat > set_nat ).

thf(sy_c_Order__Relation_Owell__order__on_001t__Nat__Onat,type,
    order_2888998067076097458on_nat: set_nat > set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Nat__Onat,type,
    bot_bot_nat: nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Predicate__Opred_It__Product____Type__Ounit_J,type,
    bot_bo2717538794563056311t_unit: pred_Product_unit ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Product____Type__Ounit,type,
    bot_bot_Product_unit: product_unit ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Int__Oint_J,type,
    bot_bot_set_int: set_int ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Nat__Onat_J,type,
    bot_bot_set_nat: set_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    bot_bo2099793752762293965at_nat: set_Pr1261947904930325089at_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J,type,
    bot_bo228742789529271731at_nat: set_Pr4329608150637261639at_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Ounit_J,type,
    bot_bo3957492148770167129t_unit: set_Product_unit ).

thf(sy_c_Orderings_Oord__class_OLeast_001t__Nat__Onat,type,
    ord_Least_nat: ( nat > $o ) > nat ).

thf(sy_c_Orderings_Oord__class_Oless_001_062_It__Int__Oint_M_Eo_J,type,
    ord_less_int_o: ( int > $o ) > ( int > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001_062_It__Nat__Onat_M_Eo_J,type,
    ord_less_nat_o: ( nat > $o ) > ( nat > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001_062_It__Set__Oset_It__Nat__Onat_J_M_Eo_J,type,
    ord_less_set_nat_o: ( set_nat > $o ) > ( set_nat > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001_062_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_M_Eo_J,type,
    ord_le2688692977766382584_int_o: ( set_Pr958786334691620121nt_int > $o ) > ( set_Pr958786334691620121nt_int > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001_062_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_M_Eo_J,type,
    ord_le220952123948551344_nat_o: ( set_Pr1261947904930325089at_nat > $o ) > ( set_Pr1261947904930325089at_nat > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Code____Numeral__Ointeger,type,
    ord_le6747313008572928689nteger: code_integer > code_integer > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Code____Numeral__Onatural,type,
    ord_le5570908160329646204atural: code_natural > code_natural > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Int__Oint,type,
    ord_less_int: int > int > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
    ord_less_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Num__Onum,type,
    ord_less_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Rat__Orat,type,
    ord_less_rat: rat > rat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Code____Numeral__Ointeger_J,type,
    ord_le1307284697595431911nteger: set_Code_integer > set_Code_integer > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Int__Oint_J,type,
    ord_less_set_int: set_int > set_int > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_less_set_nat: set_nat > set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    ord_le7563427860532173253nt_int: set_Pr958786334691620121nt_int > set_Pr958786334691620121nt_int > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    ord_le7866589430770878221at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    ord_less_set_set_nat: set_set_nat > set_set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    ord_le1924305788584680229nt_int: set_se6260736226359567993nt_int > set_se6260736226359567993nt_int > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    ord_le3519150613208228973at_nat: set_se7855581050983116737at_nat > set_se7855581050983116737at_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__String__Oliteral,type,
    ord_less_literal: literal > literal > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_M_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_M_Eo_J_J,type,
    ord_le3636971675376928563eger_o: ( ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o ) > ( ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_M_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_M_Eo_J_J,type,
    ord_le2124322318746777828_int_o: ( ( int > option6357759511663192854e_term ) > product_prod_int_int > $o ) > ( ( int > option6357759511663192854e_term ) > product_prod_int_int > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_M_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_M_Eo_J_J,type,
    ord_le4340812435750786203eger_o: ( ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o ) > ( ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_M_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_M_Eo_J_J,type,
    ord_le7397293433748542458ural_o: ( ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > $o ) > ( ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_M_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_M_Eo_J_J,type,
    ord_le5643404153117327598_int_o: ( ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > $o ) > ( ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_It__Int__Oint_M_062_It__Int__Oint_M_Eo_J_J,type,
    ord_le6741204236512500942_int_o: ( int > int > $o ) > ( int > int > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_It__Int__Oint_M_Eo_J,type,
    ord_less_eq_int_o: ( int > $o ) > ( int > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_It__Nat__Onat_M_Eo_J,type,
    ord_less_eq_nat_o: ( nat > $o ) > ( nat > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_It__Set__Oset_It__Nat__Onat_J_M_Eo_J,type,
    ord_le3964352015994296041_nat_o: ( set_nat > $o ) > ( set_nat > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_M_Eo_J,type,
    ord_le8334417538754933252_int_o: ( set_Pr958786334691620121nt_int > $o ) > ( set_Pr958786334691620121nt_int > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_M_Eo_J,type,
    ord_le5866676684937102012_nat_o: ( set_Pr1261947904930325089at_nat > $o ) > ( set_Pr1261947904930325089at_nat > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Code____Numeral__Ointeger,type,
    ord_le3102999989581377725nteger: code_integer > code_integer > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Code____Numeral__Onatural,type,
    ord_le1926595141338095240atural: code_natural > code_natural > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Filter__Ofilter_It__Nat__Onat_J,type,
    ord_le2510731241096832064er_nat: filter_nat > filter_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Int__Oint,type,
    ord_less_eq_int: int > int > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Nat__Onat,type,
    ord_less_eq_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Num__Onum,type,
    ord_less_eq_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Rat__Orat,type,
    ord_less_eq_rat: rat > rat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Code____Numeral__Ointeger_J,type,
    ord_le7084787975880047091nteger: set_Code_integer > set_Code_integer > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Int__Oint_J,type,
    ord_less_eq_set_int: set_int > set_int > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    ord_le6045566169113846134st_nat: set_list_nat > set_list_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_less_eq_set_nat: set_nat > set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_J,type,
    ord_le3216752416896350996nteger: set_Pr8056137968301705908nteger > set_Pr8056137968301705908nteger > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    ord_le135402666524580259nt_int: set_Pr1872883991513573699nt_int > set_Pr1872883991513573699nt_int > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_J,type,
    ord_le653643898420964396nteger: set_Pr1281608226676607948nteger > set_Pr1281608226676607948nteger > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J_J,type,
    ord_le3616440322383431309atural: set_Pr4244404650639074861atural > set_Pr4244404650639074861atural > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    ord_le8725513860283290265nt_int: set_Pr9222295170931077689nt_int > set_Pr9222295170931077689nt_int > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    ord_le2843351958646193337nt_int: set_Pr958786334691620121nt_int > set_Pr958786334691620121nt_int > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    ord_le3146513528884898305at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Ounit_J,type,
    ord_le3507040750410214029t_unit: set_Product_unit > set_Product_unit > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    ord_le6893508408891458716et_nat: set_set_nat > set_set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    ord_le483042692224249369nt_int: set_se6260736226359567993nt_int > set_se6260736226359567993nt_int > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    ord_le2077887516847798113at_nat: set_se7855581050983116737at_nat > set_se7855581050983116737at_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__String__Ochar_J,type,
    ord_less_eq_set_char: set_char > set_char > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__String__Oliteral,type,
    ord_less_eq_literal: literal > literal > $o ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Code____Numeral__Ointeger,type,
    ord_max_Code_integer: code_integer > code_integer > code_integer ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Code____Numeral__Onatural,type,
    ord_max_Code_natural: code_natural > code_natural > code_natural ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Int__Oint,type,
    ord_max_int: int > int > int ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Nat__Onat,type,
    ord_max_nat: nat > nat > nat ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Num__Onum,type,
    ord_max_num: num > num > num ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Rat__Orat,type,
    ord_max_rat: rat > rat > rat ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_max_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Orderings_Oord__class_Omin_001t__Int__Oint,type,
    ord_min_int: int > int > int ).

thf(sy_c_Orderings_Oord__class_Omin_001t__Nat__Onat,type,
    ord_min_nat: nat > nat > nat ).

thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Nat__Onat,type,
    order_Greatest_nat: ( nat > $o ) > nat ).

thf(sy_c_Orderings_Oorder__class_Omono_001t__Nat__Onat_001t__Nat__Onat,type,
    order_mono_nat_nat: ( nat > nat ) > $o ).

thf(sy_c_Orderings_Oorder__class_Ostrict__mono_001t__Nat__Onat_001t__Nat__Onat,type,
    order_5726023648592871131at_nat: ( nat > nat ) > $o ).

thf(sy_c_Orderings_Oordering_001t__Nat__Onat,type,
    ordering_nat: ( nat > nat > $o ) > ( nat > nat > $o ) > $o ).

thf(sy_c_Orderings_Oordering__top_001t__Nat__Onat,type,
    ordering_top_nat: ( nat > nat > $o ) > ( nat > nat > $o ) > nat > $o ).

thf(sy_c_Orderings_Opreordering_001t__Nat__Onat,type,
    preordering_nat: ( nat > nat > $o ) > ( nat > nat > $o ) > $o ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Product____Type__Ounit,type,
    top_top_Product_unit: product_unit ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Int__Oint_J,type,
    top_top_set_int: set_int ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Nat__Onat_J,type,
    top_top_set_nat: set_nat ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Product____Type__Ounit_J,type,
    top_to1996260823553986621t_unit: set_Product_unit ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__String__Ochar_J,type,
    top_top_set_char: set_char ).

thf(sy_c_Power_Opower__class_Opower_001t__Code____Numeral__Ointeger,type,
    power_8256067586552552935nteger: code_integer > nat > code_integer ).

thf(sy_c_Power_Opower__class_Opower_001t__Code____Numeral__Onatural,type,
    power_7079662738309270450atural: code_natural > nat > code_natural ).

thf(sy_c_Power_Opower__class_Opower_001t__Int__Oint,type,
    power_power_int: int > nat > int ).

thf(sy_c_Power_Opower__class_Opower_001t__Nat__Onat,type,
    power_power_nat: nat > nat > nat ).

thf(sy_c_Power_Opower__class_Opower_001t__Rat__Orat,type,
    power_power_rat: rat > nat > rat ).

thf(sy_c_Predicate_Opred_Oeval_001t__Product____Type__Ounit,type,
    eval_Product_unit: pred_Product_unit > product_unit > $o ).

thf(sy_c_Predicate_Osingle_001t__Product____Type__Ounit,type,
    single_Product_unit: product_unit > pred_Product_unit ).

thf(sy_c_Product__Type_OPair_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc6137756002093451184nteger: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > produc8763457246119570046nteger ).

thf(sy_c_Product__Type_OPair_001_062_It__Code____Numeral__Onatural_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc2252593628808123835atural: ( code_natural > option6357759511663192854e_term ) > produc7822875418678951345atural > produc8731074985263844745atural ).

thf(sy_c_Product__Type_OPair_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc4305682042979456191nt_int: ( int > option6357759511663192854e_term ) > product_prod_int_int > produc7773217078559923341nt_int ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc3209952032786966637at_nat: ( nat > nat > nat ) > produc7248412053542808358at_nat > produc4471711990508489141at_nat ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc8603105652947943368nteger: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > produc1908205239877642774nteger ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc3831813291587773865atural: ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > produc989692990947075319atural ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc5700946648718959541nt_int: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > produc2285326912895808259nt_int ).

thf(sy_c_Product__Type_OPair_001t__Code____Numeral__Ointeger_001_Eo,type,
    produc6677183202524767010eger_o: code_integer > $o > produc6271795597528267376eger_o ).

thf(sy_c_Product__Type_OPair_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc1086072967326762835nteger: code_integer > code_integer > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_OPair_001t__Code____Numeral__Onatural_001t__Code____Numeral__Onatural,type,
    produc3574140220909816553atural: code_natural > code_natural > produc7822875418678951345atural ).

thf(sy_c_Product__Type_OPair_001t__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_001t__Nat__Onat,type,
    produc584006145561248582it_nat: heap_e7401611519738050253t_unit > nat > produc6653097349344004940it_nat ).

thf(sy_c_Product__Type_OPair_001t__Int__Oint_001t__Int__Oint,type,
    product_Pair_int_int: int > int > product_prod_int_int ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Nat__Onat,type,
    product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Num__Onum,type,
    product_Pair_nat_num: nat > num > product_prod_nat_num ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    produc638857205735767105it_nat: nat > option8956607266484857688it_nat > produc3911288613690379145it_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    produc4111269673004989362it_nat: nat > option3562590408128118217it_nat > produc4453839368661128058it_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc487386426758144856at_nat: nat > product_prod_nat_nat > produc7248412053542808358at_nat ).

thf(sy_c_Product__Type_OPair_001t__Num__Onum_001t__Num__Onum,type,
    product_Pair_num_num: num > num > product_prod_num_num ).

thf(sy_c_Product__Type_OPair_001t__Predicate__Opred_It__Product____Type__Ounit_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc5069803637994805237atural: pred_Product_unit > produc7822875418678951345atural > produc4675096598859438275atural ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc6161850002892822231at_nat: product_prod_nat_nat > product_prod_nat_nat > produc859450856879609959at_nat ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Ounit_001t__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J,type,
    produc7133225469290080770it_nat: product_unit > produc6653097349344004940it_nat > produc8664842809031399944it_nat ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_It__Int__Oint_J_001t__Set__Oset_It__Int__Oint_J,type,
    produc6363374080413544029et_int: set_int > set_int > produc2115011035271226405et_int ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_It__Nat__Onat_J_001t__Set__Oset_It__Nat__Onat_J,type,
    produc4532415448927165861et_nat: set_nat > set_nat > produc7819656566062154093et_nat ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_001t__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    produc763777882069021527od_o_o: set_Product_prod_o_o > set_Product_prod_o_o > produc2934264451710624999od_o_o ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc8517790099723286449at_nat: set_Product_prod_o_o > set_Pr1261947904930325089at_nat > produc732395585841259969at_nat ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc2922128104949294807at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > produc3843707927480180839at_nat ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J_001t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J,type,
    produc9060074326276436823at_nat: set_Pr4329608150637261639at_nat > set_Pr4329608150637261639at_nat > produc1319942482725812455at_nat ).

thf(sy_c_Product__Type_OPair_001tf__a_001t__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J,type,
    produc9178034014595674355it_nat: a > produc6653097349344004940it_nat > produc3260487557148687353it_nat ).

thf(sy_c_Product__Type_OSigma_001t__Nat__Onat_001t__Nat__Onat,type,
    produc457027306803732586at_nat: set_nat > ( nat > set_nat ) > set_Pr1261947904930325089at_nat ).

thf(sy_c_Product__Type_OUnity,type,
    product_Unity: product_unit ).

thf(sy_c_Product__Type_Oapfst_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc6157546124166486841nteger: ( ( code_integer > option6357759511663192854e_term ) > code_integer > option6357759511663192854e_term ) > produc8763457246119570046nteger > produc8763457246119570046nteger ).

thf(sy_c_Product__Type_Oapfst_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc2291436665917485009nteger: ( ( code_integer > option6357759511663192854e_term ) > produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8763457246119570046nteger > produc1908205239877642774nteger ).

thf(sy_c_Product__Type_Oapfst_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc7131893314732144953nt_int: ( ( int > option6357759511663192854e_term ) > int > option6357759511663192854e_term ) > produc7773217078559923341nt_int > produc7773217078559923341nt_int ).

thf(sy_c_Product__Type_Oapfst_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc6067946493426971951nt_int: ( ( int > option6357759511663192854e_term ) > produc8551481072490612790e_term > option6357759511663192854e_term ) > produc7773217078559923341nt_int > produc2285326912895808259nt_int ).

thf(sy_c_Product__Type_Oapfst_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc1843087649659261265nteger: ( ( produc6241069584506657477e_term > option6357759511663192854e_term ) > code_integer > option6357759511663192854e_term ) > produc1908205239877642774nteger > produc8763457246119570046nteger ).

thf(sy_c_Product__Type_Oapfst_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc2515316116081422825nteger: ( ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc6241069584506657477e_term > option6357759511663192854e_term ) > produc1908205239877642774nteger > produc1908205239877642774nteger ).

thf(sy_c_Product__Type_Oapfst_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc7227253073565913365atural: ( ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc4972180933644002618e_term > option6357759511663192854e_term ) > produc989692990947075319atural > produc989692990947075319atural ).

thf(sy_c_Product__Type_Oapfst_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc6919319362177967663nt_int: ( ( produc8551481072490612790e_term > option6357759511663192854e_term ) > int > option6357759511663192854e_term ) > produc2285326912895808259nt_int > produc7773217078559923341nt_int ).

thf(sy_c_Product__Type_Oapfst_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc7277921532047535397nt_int: ( ( produc8551481072490612790e_term > option6357759511663192854e_term ) > produc8551481072490612790e_term > option6357759511663192854e_term ) > produc2285326912895808259nt_int > produc2285326912895808259nt_int ).

thf(sy_c_Product__Type_Oapfst_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc3195571438000033749nteger: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Int__Oint,type,
    produc8661989277576770216rm_int: ( int > code_integer > option6357759511663192854e_term ) > product_prod_int_int > produc3118880831492415775rm_int ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc4559386683668556831nteger: ( int > code_integer > option6357759511663192854e_term ) > produc6162884466328367972nteger > produc8763457246119570046nteger ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Int__Oint,type,
    produc2895628470685950711rm_int: ( int > int > option6357759511663192854e_term ) > product_prod_int_int > produc6025053409261769070rm_int ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc7862092043137183022nt_int: ( int > int > option6357759511663192854e_term ) > produc759720530913461378nt_int > produc7773217078559923341nt_int ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Int__Oint,type,
    produc7344697412356995344rm_int: ( int > produc6241069584506657477e_term > option6357759511663192854e_term ) > product_prod_int_int > produc7172142986261921671rm_int ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc5502177047915545527nteger: ( int > produc6241069584506657477e_term > option6357759511663192854e_term ) > produc6162884466328367972nteger > produc1908205239877642774nteger ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Int__Oint,type,
    produc8208213926402859781rm_int: ( int > produc4972180933644002618e_term > option6357759511663192854e_term ) > product_prod_int_int > produc8035659500307786108rm_int ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc730884686555376024atural: ( int > produc4972180933644002618e_term > option6357759511663192854e_term ) > produc8915214464240719482atural > produc989692990947075319atural ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Int__Oint,type,
    produc212012705979908097rm_int: ( int > produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > produc5577056076408194680rm_int ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc9204274687749184420nt_int: ( int > produc8551481072490612790e_term > option6357759511663192854e_term ) > produc759720530913461378nt_int > produc2285326912895808259nt_int ).

thf(sy_c_Product__Type_Oapfst_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    produc2355237562570658114nt_int: ( int > int ) > product_prod_int_int > product_prod_int_int ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Nat__Onat,type,
    produc7038194637613762032rm_nat: ( nat > code_integer > option6357759511663192854e_term ) > product_prod_nat_nat > produc7296731851001612483rm_nat ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc4152511201693701499nteger: ( nat > code_integer > option6357759511663192854e_term ) > produc5240993858131070144nteger > produc8763457246119570046nteger ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Nat__Onat,type,
    produc2171444127112709695rm_nat: ( nat > int > option6357759511663192854e_term ) > product_prod_nat_nat > produc979532391916189970rm_nat ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc7939104695128876682nt_int: ( nat > int > option6357759511663192854e_term ) > produc6945250483304103390nt_int > produc7773217078559923341nt_int ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Nat__Onat,type,
    produc283363429515230808rm_nat: ( nat > produc6241069584506657477e_term > option6357759511663192854e_term ) > product_prod_nat_nat > produc2126621968916342571rm_nat ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc5633823332008475411nteger: ( nat > produc6241069584506657477e_term > option6357759511663192854e_term ) > produc5240993858131070144nteger > produc1908205239877642774nteger ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Nat__Onat,type,
    produc1146879943561095245rm_nat: ( nat > produc4972180933644002618e_term > option6357759511663192854e_term ) > product_prod_nat_nat > produc2990138482962207008rm_nat ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc862530970648305908atural: ( nat > produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7993323856043421654atural > produc989692990947075319atural ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Nat__Onat,type,
    produc6559004206596904265rm_nat: ( nat > produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_nat_nat > produc531535059062615580rm_nat ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc1174866932575707904nt_int: ( nat > produc8551481072490612790e_term > option6357759511663192854e_term ) > produc6945250483304103390nt_int > produc2285326912895808259nt_int ).

thf(sy_c_Product__Type_Oapfst_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    produc986720760941809198at_nat: ( nat > nat ) > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_Oapsnd_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc6499014454317279255nteger: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oapsnd_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    produc4463282112584876420nt_int: ( int > int ) > product_prod_int_int > product_prod_int_int ).

thf(sy_c_Product__Type_Oapsnd_001t__Int__Oint_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc8491535473303802243e_term: ( int > produc8923325533196201883nteger ) > produc3118880831492415775rm_int > produc8763457246119570046nteger ).

thf(sy_c_Product__Type_Oapsnd_001t__Int__Oint_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc552091674517523435e_term: ( int > produc8923325533196201883nteger ) > produc7172142986261921671rm_int > produc1908205239877642774nteger ).

thf(sy_c_Product__Type_Oapsnd_001t__Int__Oint_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Int__Oint,type,
    produc2935421404040714269er_int: ( int > produc8923325533196201883nteger ) > product_prod_int_int > produc6162884466328367972nteger ).

thf(sy_c_Product__Type_Oapsnd_001t__Int__Oint_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc2114408003348798198e_term: ( int > produc7822875418678951345atural ) > produc8035659500307786108rm_int > produc989692990947075319atural ).

thf(sy_c_Product__Type_Oapsnd_001t__Int__Oint_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001t__Int__Oint,type,
    produc1633769443012300339al_int: ( int > produc7822875418678951345atural ) > product_prod_int_int > produc8915214464240719482atural ).

thf(sy_c_Product__Type_Oapsnd_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc3260485439724623344e_term: ( int > product_prod_int_int ) > produc6025053409261769070rm_int > produc7773217078559923341nt_int ).

thf(sy_c_Product__Type_Oapsnd_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc189803804368834042e_term: ( int > product_prod_int_int ) > produc5577056076408194680rm_int > produc2285326912895808259nt_int ).

thf(sy_c_Product__Type_Oapsnd_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Int__Oint,type,
    produc6100211334659168315nt_int: ( int > product_prod_int_int ) > product_prod_int_int > produc759720530913461378nt_int ).

thf(sy_c_Product__Type_Oapsnd_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    produc3094765310956027504at_nat: ( nat > nat ) > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_Oapsnd_001t__Nat__Onat_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc8084659991328946911e_term: ( nat > produc8923325533196201883nteger ) > produc7296731851001612483rm_nat > produc8763457246119570046nteger ).

thf(sy_c_Product__Type_Oapsnd_001t__Nat__Onat_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc683737958610453319e_term: ( nat > produc8923325533196201883nteger ) > produc2126621968916342571rm_nat > produc1908205239877642774nteger ).

thf(sy_c_Product__Type_Oapsnd_001t__Nat__Onat_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Nat__Onat,type,
    produc2688509591584439069er_nat: ( nat > produc8923325533196201883nteger ) > product_prod_nat_nat > produc5240993858131070144nteger ).

thf(sy_c_Product__Type_Oapsnd_001t__Nat__Onat_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc2246054287441728082e_term: ( nat > produc7822875418678951345atural ) > produc2990138482962207008rm_nat > produc989692990947075319atural ).

thf(sy_c_Product__Type_Oapsnd_001t__Nat__Onat_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001t__Nat__Onat,type,
    produc1386857630556025139al_nat: ( nat > produc7822875418678951345atural ) > product_prod_nat_nat > produc7993323856043421654atural ).

thf(sy_c_Product__Type_Oapsnd_001t__Nat__Onat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc3337498091716317004e_term: ( nat > product_prod_int_int ) > produc979532391916189970rm_nat > produc7773217078559923341nt_int ).

thf(sy_c_Product__Type_Oapsnd_001t__Nat__Onat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc1383768086050133334e_term: ( nat > product_prod_int_int ) > produc531535059062615580rm_nat > produc2285326912895808259nt_int ).

thf(sy_c_Product__Type_Oapsnd_001t__Nat__Onat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Nat__Onat,type,
    produc4342665141415107387nt_nat: ( nat > product_prod_int_int ) > product_prod_nat_nat > produc6945250483304103390nt_int ).

thf(sy_c_Product__Type_Oapsnd_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc1584323072462815568e_term: ( produc8923325533196201883nteger > produc8923325533196201883nteger ) > produc8763457246119570046nteger > produc8763457246119570046nteger ).

thf(sy_c_Product__Type_Oapsnd_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc717174245515237944e_term: ( produc8923325533196201883nteger > produc8923325533196201883nteger ) > produc1908205239877642774nteger > produc1908205239877642774nteger ).

thf(sy_c_Product__Type_Oapsnd_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc2824789715873180845e_term: ( produc7822875418678951345atural > produc7822875418678951345atural ) > produc989692990947075319atural > produc989692990947075319atural ).

thf(sy_c_Product__Type_Oapsnd_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc7011684061226097695e_term: ( product_prod_int_int > product_prod_int_int ) > produc7773217078559923341nt_int > produc7773217078559923341nt_int ).

thf(sy_c_Product__Type_Oapsnd_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc4973430039190721449e_term: ( product_prod_int_int > product_prod_int_int ) > produc2285326912895808259nt_int > produc2285326912895808259nt_int ).

thf(sy_c_Product__Type_Ocurry_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_Eo,type,
    produc5457605928088077978eger_o: ( produc8763457246119570046nteger > $o ) > ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o ).

thf(sy_c_Product__Type_Ocurry_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_Eo,type,
    produc9098658269643458507_int_o: ( produc7773217078559923341nt_int > $o ) > ( int > option6357759511663192854e_term ) > product_prod_int_int > $o ).

thf(sy_c_Product__Type_Ocurry_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_Eo,type,
    produc1217013493180205570eger_o: ( produc1908205239877642774nteger > $o ) > ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o ).

thf(sy_c_Product__Type_Ocurry_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001_Eo,type,
    produc6465694447285001697ural_o: ( produc989692990947075319atural > $o ) > ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > $o ).

thf(sy_c_Product__Type_Ocurry_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_Eo,type,
    produc730925184835016917_int_o: ( produc2285326912895808259nt_int > $o ) > ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > $o ).

thf(sy_c_Product__Type_Ocurry_001t__Int__Oint_001t__Int__Oint_001_Eo,type,
    produc175634133007206835_int_o: ( product_prod_int_int > $o ) > int > int > $o ).

thf(sy_c_Product__Type_Ocurry_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    produc1016772743285680337nt_int: ( product_prod_int_int > int ) > int > int > int ).

thf(sy_c_Product__Type_Ocurry_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc8249235968001453780nt_int: ( product_prod_int_int > product_prod_int_int ) > int > int > product_prod_int_int ).

thf(sy_c_Product__Type_Ocurry_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J,type,
    produc3704529784387675049_nat_o: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > nat > nat > product_prod_nat_nat > $o ).

thf(sy_c_Product__Type_Ocurry_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc3610074571335452306at_nat: ( product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ) > nat > nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_Ointernal__case__prod_001t__Int__Oint_001t__Int__Oint_001_Eo,type,
    produc8005341501107743676_int_o: ( int > int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Product__Type_Ointernal__case__prod_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    produc7926200574084438792nt_int: ( int > int > int ) > product_prod_int_int > int ).

thf(sy_c_Product__Type_Ointernal__case__prod_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc297006045350968285nt_int: ( int > int > product_prod_int_int ) > product_prod_int_int > product_prod_int_int ).

thf(sy_c_Product__Type_Ointernal__case__prod_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J,type,
    produc4780622933104268256_nat_o: ( nat > nat > product_prod_nat_nat > $o ) > product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Product__Type_Ointernal__case__prod_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc1854806715440696265at_nat: ( nat > nat > product_prod_nat_nat > product_prod_nat_nat ) > product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_Eo,type,
    produc127349428274296955eger_o: ( ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o ) > produc8763457246119570046nteger > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Product____Type__Oprod_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    produc3906647086178084059nteger: ( ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > produc8763457246119570046nteger ) > produc8763457246119570046nteger > produc8763457246119570046nteger ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Set__Oset_It__Int__Oint_J,type,
    produc8604463032469472703et_int: ( ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_int ) > produc8763457246119570046nteger > set_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Set__Oset_It__Nat__Onat_J,type,
    produc3558942015123893603et_nat: ( ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_nat ) > produc8763457246119570046nteger > set_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    produc4656581727815777817et_nat: ( ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_set_nat ) > produc8763457246119570046nteger > set_set_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    produc359452621024150620nt_int: ( ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_se6260736226359567993nt_int ) > produc8763457246119570046nteger > set_se6260736226359567993nt_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc1954297445647699364at_nat: ( ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_se7855581050983116737at_nat ) > produc8763457246119570046nteger > set_se7855581050983116737at_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_Eo,type,
    produc2558449545302689196_int_o: ( ( int > option6357759511663192854e_term ) > product_prod_int_int > $o ) > produc7773217078559923341nt_int > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    produc5122537100556696953nt_int: ( ( int > option6357759511663192854e_term ) > product_prod_int_int > produc7773217078559923341nt_int ) > produc7773217078559923341nt_int > produc7773217078559923341nt_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Set__Oset_It__Int__Oint_J,type,
    produc4111701587417901774et_int: ( ( int > option6357759511663192854e_term ) > product_prod_int_int > set_int ) > produc7773217078559923341nt_int > set_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Set__Oset_It__Nat__Onat_J,type,
    produc8289552606927098482et_nat: ( ( int > option6357759511663192854e_term ) > product_prod_int_int > set_nat ) > produc7773217078559923341nt_int > set_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    produc3577156405726439208et_nat: ( ( int > option6357759511663192854e_term ) > product_prod_int_int > set_set_nat ) > produc7773217078559923341nt_int > set_set_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    produc575502675617541261nt_int: ( ( int > option6357759511663192854e_term ) > product_prod_int_int > set_se6260736226359567993nt_int ) > produc7773217078559923341nt_int > set_se6260736226359567993nt_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc2170347500241090005at_nat: ( ( int > option6357759511663192854e_term ) > product_prod_int_int > set_se7855581050983116737at_nat ) > produc7773217078559923341nt_int > set_se7855581050983116737at_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_Eo,type,
    produc6253627499356882019eger_o: ( ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o ) > produc1908205239877642774nteger > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    produc6512950862096126219nteger: ( ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > produc1908205239877642774nteger ) > produc1908205239877642774nteger > produc1908205239877642774nteger ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001_Eo,type,
    produc2278936416606902338ural_o: ( ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > $o ) > produc989692990947075319atural > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc1300469243244976333atural: ( ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > produc989692990947075319atural ) > produc989692990947075319atural > produc989692990947075319atural ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_Eo,type,
    produc1573362020775583542_int_o: ( ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > $o ) > produc2285326912895808259nt_int > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    produc8492565224438309093nt_int: ( ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > produc2285326912895808259nt_int ) > produc2285326912895808259nt_int > produc2285326912895808259nt_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Int__Oint,type,
    produc1553301316500091796er_int: ( code_integer > code_integer > int ) > produc8923325533196201883nteger > int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Nat__Onat,type,
    produc1555791787009142072er_nat: ( code_integer > code_integer > nat ) > produc8923325533196201883nteger > nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Num__Onum,type,
    produc7336495610019696514er_num: ( code_integer > code_integer > num ) > produc8923325533196201883nteger > num ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J,type,
    produc9125791028180074456eger_o: ( code_integer > code_integer > produc6271795597528267376eger_o ) > produc8923325533196201883nteger > produc6271795597528267376eger_o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc6916734918728496179nteger: ( code_integer > code_integer > produc8923325533196201883nteger ) > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc4281629032016041417nteger: ( code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger ) > produc3346328345660746739nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_001t__Nat__Onat_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    produc7488178964372371019it_nat: ( heap_e7401611519738050253t_unit > nat > option8956607266484857688it_nat ) > produc6653097349344004940it_nat > option8956607266484857688it_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_001t__Nat__Onat_001t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    produc5645566021302314940it_nat: ( heap_e7401611519738050253t_unit > nat > option3562590408128118217it_nat ) > produc6653097349344004940it_nat > option3562590408128118217it_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Int__Oint_001t__Int__Oint_001_Eo,type,
    produc4947309494688390418_int_o: ( int > int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    produc8211389475949308722nt_int: ( int > int > int ) > product_prod_int_int > int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc4245557441103728435nt_int: ( int > int > product_prod_int_int ) > product_prod_int_int > product_prod_int_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J,type,
    produc8739625826339149834_nat_o: ( nat > nat > product_prod_nat_nat > $o ) > product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc27273713700761075at_nat: ( nat > nat > product_prod_nat_nat > product_prod_nat_nat ) > product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001_Eo,type,
    produc6081775807080527818_nat_o: ( nat > nat > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Code____Numeral__Ointeger,type,
    produc1830744345554046123nteger: ( nat > nat > code_integer ) > product_prod_nat_nat > code_integer ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Int__Oint,type,
    produc6840382203811409530at_int: ( nat > nat > int ) > product_prod_nat_nat > int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__List__Olist_It__Nat__Onat_J,type,
    produc2761476792215241774st_nat: ( nat > nat > list_nat ) > product_prod_nat_nat > list_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    produc6842872674320459806at_nat: ( nat > nat > nat ) > product_prod_nat_nat > nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc2626176000494625587at_nat: ( nat > nat > product_prod_nat_nat ) > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Rat__Orat,type,
    produc6207742614233964070at_rat: ( nat > nat > rat ) > product_prod_nat_nat > rat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Num__Onum_001t__Option__Ooption_It__Num__Onum_J,type,
    produc478579273971653890on_num: ( nat > num > option_num ) > product_prod_nat_num > option_num ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Predicate__Opred_It__Product____Type__Ounit_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001t__Product____Type__Oprod_It__Predicate__Opred_It__Product____Type__Ounit_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc6665183775751917029atural: ( pred_Product_unit > produc7822875418678951345atural > produc4675096598859438275atural ) > produc4675096598859438275atural > produc4675096598859438275atural ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    produc9040295013417217025nteger: ( produc8923325533196201883nteger > ( code_integer > option6357759511663192854e_term ) > produc8763457246119570046nteger ) > produc1017113440723519068e_term > produc8763457246119570046nteger ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    produc5068368601420144385nteger: ( produc8923325533196201883nteger > ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc1908205239877642774nteger ) > produc998928222018024388e_term > produc1908205239877642774nteger ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc868849831700739565atural: ( produc7822875418678951345atural > ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc989692990947075319atural ) > produc8392782284284844111e_term > produc989692990947075319atural ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    produc3478612561300218621nt_int: ( product_prod_int_int > ( int > option6357759511663192854e_term ) > produc7773217078559923341nt_int ) > produc3832618445565238089e_term > produc7773217078559923341nt_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    produc199769199162113789nt_int: ( product_prod_int_int > ( produc8551481072490612790e_term > option6357759511663192854e_term ) > produc2285326912895808259nt_int ) > produc1821397396195235155e_term > produc2285326912895808259nt_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Set__Oset_It__Int__Oint_J_001t__Set__Oset_It__Int__Oint_J_001_Eo,type,
    produc4109468873575309990_int_o: ( set_int > set_int > $o ) > produc2115011035271226405et_int > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Set__Oset_It__Nat__Onat_J_001t__Set__Oset_It__Nat__Onat_J_001_Eo,type,
    produc6247414631856714078_nat_o: ( set_nat > set_nat > $o ) > produc7819656566062154093et_nat > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001_Eo,type,
    produc410239310623530412_nat_o: ( set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > $o ) > produc3843707927480180839at_nat > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__a_001t__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    produc5648861294512138360it_nat: ( a > produc6653097349344004940it_nat > option8956607266484857688it_nat ) > produc3260487557148687353it_nat > option8956607266484857688it_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__a_001t__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_001t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    produc7850007024774191849it_nat: ( a > produc6653097349344004940it_nat > option3562590408128118217it_nat ) > produc3260487557148687353it_nat > option3562590408128118217it_nat ).

thf(sy_c_Product__Type_Oprod_Ofst_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc2702340305111172292nteger: produc8763457246119570046nteger > code_integer > option6357759511663192854e_term ).

thf(sy_c_Product__Type_Oprod_Ofst_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc6230002227079971283nt_int: produc7773217078559923341nt_int > int > option6357759511663192854e_term ).

thf(sy_c_Product__Type_Oprod_Ofst_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc7822682618958472924nteger: produc1908205239877642774nteger > produc6241069584506657477e_term > option6357759511663192854e_term ).

thf(sy_c_Product__Type_Oprod_Ofst_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc3051390257598303421atural: produc989692990947075319atural > produc4972180933644002618e_term > option6357759511663192854e_term ).

thf(sy_c_Product__Type_Oprod_Ofst_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc6816164490631068361nt_int: produc2285326912895808259nt_int > produc8551481072490612790e_term > option6357759511663192854e_term ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc8508995932063986495nteger: produc8923325533196201883nteger > code_integer ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc1861665112190112313nteger: produc3346328345660746739nteger > code_integer ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_001t__Nat__Onat,type,
    produc2838810277069100634it_nat: produc6653097349344004940it_nat > heap_e7401611519738050253t_unit ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Int__Oint_001t__Int__Oint,type,
    product_fst_int_int: product_prod_int_int > int ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Nat__Onat_001t__Nat__Onat,type,
    product_fst_nat_nat: product_prod_nat_nat > nat ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc8030462327630046442e_term: produc1017113440723519068e_term > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc1117956856558811858e_term: produc998928222018024388e_term > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc2680273185390086621e_term: produc8392782284284844111e_term > produc7822875418678951345atural ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc217921407547260247e_term: produc3832618445565238089e_term > product_prod_int_int ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc6335124012134732001e_term: produc1821397396195235155e_term > product_prod_int_int ).

thf(sy_c_Product__Type_Oprod_Ofst_001tf__a_001t__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J,type,
    produc4481111470393856007it_nat: produc3260487557148687353it_nat > a ).

thf(sy_c_Product__Type_Oprod_Osnd_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc6514156286822040066nteger: produc8763457246119570046nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Osnd_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc3162348030201620241nt_int: produc7773217078559923341nt_int > product_prod_int_int ).

thf(sy_c_Product__Type_Oprod_Osnd_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc7856867400915047194nteger: produc1908205239877642774nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Osnd_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc3085575039554877691atural: produc989692990947075319atural > produc7822875418678951345atural ).

thf(sy_c_Product__Type_Oprod_Osnd_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc7328097813583171335nt_int: produc2285326912895808259nt_int > product_prod_int_int ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc6174133586879617921nteger: produc8923325533196201883nteger > code_integer ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc7955729907432593271nteger: produc3346328345660746739nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_001t__Nat__Onat,type,
    produc2594868675584459928it_nat: produc6653097349344004940it_nat > nat ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Int__Oint_001t__Int__Oint,type,
    product_snd_int_int: product_prod_int_int > int ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001t__Nat__Onat,type,
    product_snd_nat_nat: product_prod_nat_nat > nat ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc2618906272486138408e_term: produc1017113440723519068e_term > code_integer > option6357759511663192854e_term ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc1152141638515386128e_term: produc998928222018024388e_term > produc6241069584506657477e_term > option6357759511663192854e_term ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc2714457967346660891e_term: produc8392782284284844111e_term > produc4972180933644002618e_term > option6357759511663192854e_term ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc6373639247523685013e_term: produc3832618445565238089e_term > int > option6357759511663192854e_term ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J,type,
    produc6847057335086834975e_term: produc1821397396195235155e_term > produc8551481072490612790e_term > option6357759511663192854e_term ).

thf(sy_c_Product__Type_Oprod_Osnd_001tf__a_001t__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J,type,
    produc6461318759014699077it_nat: produc3260487557148687353it_nat > produc6653097349344004940it_nat ).

thf(sy_c_Quotient_OQuotient3_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    quotie6776551016481293500at_int: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > int ) > ( int > product_prod_nat_nat ) > $o ).

thf(sy_c_Quotient_Oquot__type_Oabs_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    quot_a8334514980957697477at_int: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( set_Pr1261947904930325089at_nat > int ) > product_prod_nat_nat > int ).

thf(sy_c_Quotient_Oquot__type_Orep_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    quot_r1512469584000298464at_nat: ( int > set_Pr1261947904930325089at_nat ) > int > product_prod_nat_nat ).

thf(sy_c_Random_Olog,type,
    log: code_natural > code_natural > code_natural ).

thf(sy_c_Random_Olog__rel,type,
    log_rel: produc7822875418678951345atural > produc7822875418678951345atural > $o ).

thf(sy_c_Random__Pred_Onot__randompred,type,
    random6974930770145893639ompred: ( produc7822875418678951345atural > produc4675096598859438275atural ) > produc7822875418678951345atural > produc4675096598859438275atural ).

thf(sy_c_Rat_OAbs__Rat,type,
    abs_Rat: product_prod_int_int > rat ).

thf(sy_c_Rat_OFract,type,
    fract: int > int > rat ).

thf(sy_c_Rat_OFrct,type,
    frct: product_prod_int_int > rat ).

thf(sy_c_Rat_ORep__Rat,type,
    rep_Rat: rat > product_prod_int_int ).

thf(sy_c_Rat_Ocr__rat,type,
    cr_rat: product_prod_int_int > rat > $o ).

thf(sy_c_Rat_Onormalize,type,
    normalize: product_prod_int_int > product_prod_int_int ).

thf(sy_c_Rat_Oof__int,type,
    of_int: int > rat ).

thf(sy_c_Rat_Opcr__rat,type,
    pcr_rat: product_prod_int_int > rat > $o ).

thf(sy_c_Rat_Opositive,type,
    positive: rat > $o ).

thf(sy_c_Rat_Oquotient__of,type,
    quotient_of: rat > product_prod_int_int ).

thf(sy_c_Rat_Orat_OAbs__rat,type,
    abs_rat: set_Pr958786334691620121nt_int > rat ).

thf(sy_c_Rat_Orat_ORep__rat,type,
    rep_rat: rat > set_Pr958786334691620121nt_int ).

thf(sy_c_Rat_Oratrel,type,
    ratrel: product_prod_int_int > product_prod_int_int > $o ).

thf(sy_c_Relation_ODomainp_001t__Int__Oint_001t__Int__Oint,type,
    domainp_int_int: ( int > int > $o ) > int > $o ).

thf(sy_c_Relation_ODomainp_001t__List__Olist_It__String__Ochar_J_001t__String__Oliteral,type,
    domain7888411570377768909iteral: ( list_char > literal > $o ) > list_char > $o ).

thf(sy_c_Relation_ODomainp_001t__Nat__Onat_001t__Nat__Onat,type,
    domainp_nat_nat: ( nat > nat > $o ) > nat > $o ).

thf(sy_c_Relation_ODomainp_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat,type,
    domain9213661015745956397nt_rat: ( product_prod_int_int > rat > $o ) > product_prod_int_int > $o ).

thf(sy_c_Relation_ODomainp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    domain7287725470393535433at_int: ( product_prod_nat_nat > int > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Relation_ODomainp_001t__String__Ochar_001t__String__Ochar,type,
    domainp_char_char: ( char > char > $o ) > char > $o ).

thf(sy_c_Relation_OField_001_Eo,type,
    field_o: set_Product_prod_o_o > set_o ).

thf(sy_c_Relation_OField_001t__Nat__Onat,type,
    field_nat: set_Pr1261947904930325089at_nat > set_nat ).

thf(sy_c_Relation_Orelcompp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    relcom8911704206367525917at_int: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > int > $o ) > product_prod_nat_nat > int > $o ).

thf(sy_c_Rings_Oalgebraic__semidom__class_Ocoprime_001t__Int__Oint,type,
    algebr932160517623751201me_int: int > int > $o ).

thf(sy_c_Rings_Oalgebraic__semidom__class_Ocoprime_001t__Nat__Onat,type,
    algebr934650988132801477me_nat: nat > nat > $o ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Code____Numeral__Ointeger,type,
    divide6298287555418463151nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Code____Numeral__Onatural,type,
    divide5121882707175180666atural: code_natural > code_natural > code_natural ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Int__Oint,type,
    divide_divide_int: int > int > int ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Nat__Onat,type,
    divide_divide_nat: nat > nat > nat ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Rat__Orat,type,
    divide_divide_rat: rat > rat > rat ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Code____Numeral__Ointeger,type,
    dvd_dvd_Code_integer: code_integer > code_integer > $o ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Code____Numeral__Onatural,type,
    dvd_dvd_Code_natural: code_natural > code_natural > $o ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Int__Oint,type,
    dvd_dvd_int: int > int > $o ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Nat__Onat,type,
    dvd_dvd_nat: nat > nat > $o ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Rat__Orat,type,
    dvd_dvd_rat: rat > rat > $o ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Code____Numeral__Ointeger,type,
    modulo364778990260209775nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Code____Numeral__Onatural,type,
    modulo8411746178871703098atural: code_natural > code_natural > code_natural ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Int__Oint,type,
    modulo_modulo_int: int > int > int ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Nat__Onat,type,
    modulo_modulo_nat: nat > nat > nat ).

thf(sy_c_Rings_Ounit__factor__class_Ounit__factor_001t__Nat__Onat,type,
    unit_f2748546683901255202or_nat: nat > nat ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Code____Numeral__Ointeger,type,
    zero_n356916108424825756nteger: $o > code_integer ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Code____Numeral__Onatural,type,
    zero_n8403883297036319079atural: $o > code_natural ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Int__Oint,type,
    zero_n2684676970156552555ol_int: $o > int ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Nat__Onat,type,
    zero_n2687167440665602831ol_nat: $o > nat ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Rat__Orat,type,
    zero_n2052037380579107095ol_rat: $o > rat ).

thf(sy_c_Set_OCollect_001t__Code____Numeral__Ointeger,type,
    collect_Code_integer: ( code_integer > $o ) > set_Code_integer ).

thf(sy_c_Set_OCollect_001t__Int__Oint,type,
    collect_int: ( int > $o ) > set_int ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Int__Oint_J,type,
    collect_list_int: ( list_int > $o ) > set_list_int ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    collec5989764272469232197st_nat: ( list_list_nat > $o ) > set_list_list_nat ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Nat__Onat_J,type,
    collect_list_nat: ( list_nat > $o ) > set_list_nat ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    collec3343600615725829874at_nat: ( list_P6011104703257516679at_nat > $o ) > set_li5450038453877631591at_nat ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Product____Type__Ounit_J,type,
    collec4736972532740828926t_unit: ( list_Product_unit > $o ) > set_li873732205721079667t_unit ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Set__Oset_It__Nat__Onat_J_J,type,
    collect_list_set_nat: ( list_set_nat > $o ) > set_list_set_nat ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__String__Ochar_J,type,
    collect_list_char: ( list_char > $o ) > set_list_char ).

thf(sy_c_Set_OCollect_001t__Nat__Onat,type,
    collect_nat: ( nat > $o ) > set_nat ).

thf(sy_c_Set_OCollect_001t__Num__Onum,type,
    collect_num: ( num > $o ) > set_num ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    collec213857154873943460nt_int: ( product_prod_int_int > $o ) > set_Pr958786334691620121nt_int ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    collec3392354462482085612at_nat: ( product_prod_nat_nat > $o ) > set_Pr1261947904930325089at_nat ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Set__Oset_It__Int__Oint_J_Mt__Set__Oset_It__Int__Oint_J_J,type,
    collec957716948307931664et_int: ( produc2115011035271226405et_int > $o ) > set_Pr2522554150109002629et_int ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Set__Oset_It__Nat__Onat_J_Mt__Set__Oset_It__Nat__Onat_J_J,type,
    collec6662362479098859352et_nat: ( produc7819656566062154093et_nat > $o ) > set_Pr5488025237498180813et_nat ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    collec6321179662152712658at_nat: ( produc3843707927480180839at_nat > $o ) > set_Pr4329608150637261639at_nat ).

thf(sy_c_Set_OCollect_001t__Product____Type__Ounit,type,
    collect_Product_unit: ( product_unit > $o ) > set_Product_unit ).

thf(sy_c_Set_OCollect_001t__Rat__Orat,type,
    collect_rat: ( rat > $o ) > set_rat ).

thf(sy_c_Set_OCollect_001t__Set__Oset_It__Int__Oint_J,type,
    collect_set_int: ( set_int > $o ) > set_set_int ).

thf(sy_c_Set_OCollect_001t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    collect_set_list_nat: ( set_list_nat > $o ) > set_set_list_nat ).

thf(sy_c_Set_OCollect_001t__Set__Oset_It__Nat__Onat_J,type,
    collect_set_nat: ( set_nat > $o ) > set_set_nat ).

thf(sy_c_Set_OCollect_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    collec5210948495886036740nt_int: ( set_Pr958786334691620121nt_int > $o ) > set_se6260736226359567993nt_int ).

thf(sy_c_Set_OCollect_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    collec5514110066124741708at_nat: ( set_Pr1261947904930325089at_nat > $o ) > set_se7855581050983116737at_nat ).

thf(sy_c_Set_OCollect_001t__Set__Oset_It__Product____Type__Ounit_J,type,
    collec7787489603430924120t_unit: ( set_Product_unit > $o ) > set_set_Product_unit ).

thf(sy_c_Set_OCollect_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    collect_set_set_nat: ( set_set_nat > $o ) > set_set_set_nat ).

thf(sy_c_Set_OCollect_001t__String__Oliteral,type,
    collect_literal: ( literal > $o ) > set_literal ).

thf(sy_c_Set_OPow_001t__Nat__Onat,type,
    pow_nat: set_nat > set_set_nat ).

thf(sy_c_Set_Oimage_001t__Int__Oint_001t__Int__Oint,type,
    image_int_int: ( int > int ) > set_int > set_int ).

thf(sy_c_Set_Oimage_001t__Int__Oint_001t__Nat__Onat,type,
    image_int_nat: ( int > nat ) > set_int > set_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Int__Oint,type,
    image_nat_int: ( nat > int ) > set_nat > set_int ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Nat__Onat,type,
    image_nat_nat: ( nat > nat ) > set_nat > set_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Set__Oset_It__Nat__Onat_J,type,
    image_nat_set_nat: ( nat > set_nat ) > set_nat > set_set_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__String__Ochar,type,
    image_nat_char: ( nat > char ) > set_nat > set_char ).

thf(sy_c_Set_Oimage_001t__String__Ochar_001t__Nat__Onat,type,
    image_char_nat: ( char > nat ) > set_char > set_nat ).

thf(sy_c_Set_Oinsert_001t__Int__Oint,type,
    insert_int: int > set_int > set_int ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Nat__Onat_J,type,
    insert_list_nat: list_nat > set_list_nat > set_list_nat ).

thf(sy_c_Set_Oinsert_001t__Nat__Onat,type,
    insert_nat: nat > set_nat > set_nat ).

thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    insert8211810215607154385at_nat: product_prod_nat_nat > set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    insert9069300056098147895at_nat: produc3843707927480180839at_nat > set_Pr4329608150637261639at_nat > set_Pr4329608150637261639at_nat ).

thf(sy_c_Set_Oinsert_001t__Product____Type__Ounit,type,
    insert_Product_unit: product_unit > set_Product_unit > set_Product_unit ).

thf(sy_c_Set_Oinsert_001t__Set__Oset_It__Nat__Onat_J,type,
    insert_set_nat: set_nat > set_set_nat > set_set_nat ).

thf(sy_c_Set_Oinsert_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    insert8897473484851387113nt_int: set_Pr958786334691620121nt_int > set_se6260736226359567993nt_int > set_se6260736226359567993nt_int ).

thf(sy_c_Set_Oinsert_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    insert9200635055090092081at_nat: set_Pr1261947904930325089at_nat > set_se7855581050983116737at_nat > set_se7855581050983116737at_nat ).

thf(sy_c_Set_Ovimage_001t__Nat__Onat_001t__Nat__Onat,type,
    vimage_nat_nat: ( nat > nat ) > set_nat > set_nat ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Code____Numeral__Ointeger,type,
    set_fo1084959871951514735nteger: ( nat > code_integer > code_integer ) > nat > nat > code_integer > code_integer ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Code____Numeral__Onatural,type,
    set_fo9131927060563008058atural: ( nat > code_natural > code_natural ) > nat > nat > code_natural > code_natural ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Int__Oint,type,
    set_fo2581907887559384638at_int: ( nat > int > int ) > nat > nat > int > int ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Nat__Onat,type,
    set_fo2584398358068434914at_nat: ( nat > nat > nat ) > nat > nat > nat > nat ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Rat__Orat,type,
    set_fo1949268297981939178at_rat: ( nat > rat > rat ) > nat > nat > rat > rat ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat__rel_001t__Nat__Onat,type,
    set_fo3699595496184130361el_nat: produc4471711990508489141at_nat > produc4471711990508489141at_nat > $o ).

thf(sy_c_Set__Interval_Oord__class_OatLeastAtMost_001t__Int__Oint,type,
    set_or1266510415728281911st_int: int > int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OatLeastAtMost_001t__Nat__Onat,type,
    set_or1269000886237332187st_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Int__Oint,type,
    set_or4662586982721622107an_int: int > int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Nat__Onat,type,
    set_or4665077453230672383an_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatLeast_001t__Nat__Onat,type,
    set_ord_atLeast_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Int__Oint,type,
    set_ord_atMost_int: int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Nat__Onat,type,
    set_ord_atMost_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Num__Onum,type,
    set_ord_atMost_num: num > set_num ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Rat__Orat,type,
    set_ord_atMost_rat: rat > set_rat ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Set__Oset_It__Nat__Onat_J,type,
    set_or4236626031148496127et_nat: set_nat > set_set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    set_or2459421552957432928nt_int: set_Pr958786334691620121nt_int > set_se6260736226359567993nt_int ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    set_or2762583123196137896at_nat: set_Pr1261947904930325089at_nat > set_se7855581050983116737at_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Nat__Onat,type,
    set_or6659071591806873216st_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanLessThan_001t__Nat__Onat,type,
    set_or5834768355832116004an_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThan_001t__Nat__Onat,type,
    set_or1210151606488870762an_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Int__Oint,type,
    set_ord_lessThan_int: int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Nat__Onat,type,
    set_ord_lessThan_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Num__Onum,type,
    set_ord_lessThan_num: num > set_num ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Rat__Orat,type,
    set_ord_lessThan_rat: rat > set_rat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Set__Oset_It__Nat__Onat_J,type,
    set_or890127255671739683et_nat: set_nat > set_set_nat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    set_or4940836740269066044nt_int: set_Pr958786334691620121nt_int > set_se6260736226359567993nt_int ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    set_or5243998310507771012at_nat: set_Pr1261947904930325089at_nat > set_se7855581050983116737at_nat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__String__Oliteral,type,
    set_or2436086697161274615iteral: literal > set_literal ).

thf(sy_c_String_OLiteral,type,
    literal2: $o > $o > $o > $o > $o > $o > $o > literal > literal ).

thf(sy_c_String_Oascii__of,type,
    ascii_of: char > char ).

thf(sy_c_String_Oasciis__of__literal,type,
    asciis_of_literal: literal > list_Code_integer ).

thf(sy_c_String_Ochar_OChar,type,
    char2: $o > $o > $o > $o > $o > $o > $o > $o > char ).

thf(sy_c_String_Ochar_Ocase__char_001_Eo,type,
    case_char_o: ( $o > $o > $o > $o > $o > $o > $o > $o > $o ) > char > $o ).

thf(sy_c_String_Ochar_Ocase__char_001t__String__Oliteral,type,
    case_char_literal: ( $o > $o > $o > $o > $o > $o > $o > $o > literal ) > char > literal ).

thf(sy_c_String_Ochar_Odigit0,type,
    digit0: char > $o ).

thf(sy_c_String_Ochar_Odigit1,type,
    digit1: char > $o ).

thf(sy_c_String_Ochar_Odigit2,type,
    digit2: char > $o ).

thf(sy_c_String_Ochar_Odigit3,type,
    digit3: char > $o ).

thf(sy_c_String_Ochar_Odigit4,type,
    digit4: char > $o ).

thf(sy_c_String_Ochar_Odigit5,type,
    digit5: char > $o ).

thf(sy_c_String_Ochar_Odigit6,type,
    digit6: char > $o ).

thf(sy_c_String_Ochar_Odigit7,type,
    digit7: char > $o ).

thf(sy_c_String_Ochar_Osize__char,type,
    size_char: char > nat ).

thf(sy_c_String_Ocomm__semiring__1__class_Oof__char_001t__Code____Numeral__Ointeger,type,
    comm_s4049598766089966537nteger: char > code_integer ).

thf(sy_c_String_Ocomm__semiring__1__class_Oof__char_001t__Nat__Onat,type,
    comm_s629917340098488124ar_nat: char > nat ).

thf(sy_c_String_Ocr__literal,type,
    cr_literal: list_char > literal > $o ).

thf(sy_c_String_Oliteral_OAbs__literal,type,
    abs_literal: list_char > literal ).

thf(sy_c_String_Oliteral_Oexplode,type,
    explode: literal > list_char ).

thf(sy_c_String_Oliteral__of__asciis,type,
    literal_of_asciis: list_Code_integer > literal ).

thf(sy_c_String_Opcr__literal,type,
    pcr_literal: list_char > literal > $o ).

thf(sy_c_String_Ounique__euclidean__semiring__with__bit__operations__class_Ochar__of_001t__Code____Numeral__Ointeger,type,
    unique1708501630192214702nteger: code_integer > char ).

thf(sy_c_String_Ounique__euclidean__semiring__with__bit__operations__class_Ochar__of_001t__Nat__Onat,type,
    unique3096191561947761185of_nat: nat > char ).

thf(sy_c_Sum__Type_Osum_Ocase__sum_001t__Nat__Onat_001t__Int__Oint_001t__Nat__Onat,type,
    sum_ca7763040182479039464nt_nat: ( nat > int ) > ( nat > int ) > sum_sum_nat_nat > int ).

thf(sy_c_Sum__Type_Osum_Ocase__sum_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    sum_ca6763686470577984908at_nat: ( nat > nat ) > ( nat > nat ) > sum_sum_nat_nat > nat ).

thf(sy_c_Transfer_Obi__total_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    bi_tot896582865486249351at_int: ( product_prod_nat_nat > int > $o ) > $o ).

thf(sy_c_Transfer_Oleft__total_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J,type,
    left_t8440299596084406506t_char: ( list_char > list_char > $o ) > $o ).

thf(sy_c_Transfer_Oleft__total_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    left_t3131394472396969446nt_int: ( product_prod_int_int > product_prod_int_int > $o ) > $o ).

thf(sy_c_Transfer_Oleft__total_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    left_t1861001511420785031at_int: ( product_prod_nat_nat > int > $o ) > $o ).

thf(sy_c_Transfer_Oright__total_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    right_1157779049177982926at_int: ( product_prod_nat_nat > int > $o ) > $o ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Nat__Onat,type,
    transi2905341329935302413cl_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Transitive__Closure_Otrancl_001t__Nat__Onat,type,
    transi6264000038957366511cl_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Transitive__Closure_Otranclp_001t__Nat__Onat,type,
    transi2163837189807498211lp_nat: ( nat > nat > $o ) > nat > nat > $o ).

thf(sy_c_Typedef_Otype__definition_001t__Int__Oint_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    type_d8752208705193531015at_nat: ( int > set_Pr1261947904930325089at_nat ) > ( set_Pr1261947904930325089at_nat > int ) > set_se7855581050983116737at_nat > $o ).

thf(sy_c_Typedef_Otype__definition_001t__Rat__Orat_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    type_d8554052265237484179nt_int: ( rat > set_Pr958786334691620121nt_int ) > ( set_Pr958786334691620121nt_int > rat ) > set_se6260736226359567993nt_int > $o ).

thf(sy_c_Typedef_Otype__definition_001t__String__Oliteral_001t__List__Olist_It__String__Ochar_J,type,
    type_d4752411451802217481t_char: ( literal > list_char ) > ( list_char > literal ) > set_list_char > $o ).

thf(sy_c_Typerep_Otyperep_OTyperep,type,
    typerep2: literal > list_typerep > typerep ).

thf(sy_c_Typerep_Otyperep_Osize__typerep,type,
    size_typerep: typerep > nat ).

thf(sy_c_Wellfounded_Oaccp_001t__List__Olist_It__Nat__Onat_J,type,
    accp_list_nat: ( list_nat > list_nat > $o ) > list_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Nat__Onat,type,
    accp_nat: ( nat > nat > $o ) > nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    accp_P6019419558468335806at_nat: ( produc4471711990508489141at_nat > produc4471711990508489141at_nat > $o ) > produc4471711990508489141at_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    accp_P8126237942716283194atural: ( produc7822875418678951345atural > produc7822875418678951345atural > $o ) > produc7822875418678951345atural > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    accp_P1096762738010456898nt_int: ( product_prod_int_int > product_prod_int_int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    accp_P4275260045618599050at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_J,type,
    accp_P414730952086964626it_nat: ( produc3911288613690379145it_nat > produc3911288613690379145it_nat > $o ) > produc3911288613690379145it_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_J,type,
    accp_P6263092265436569219it_nat: ( produc4453839368661128058it_nat > produc4453839368661128058it_nat > $o ) > produc4453839368661128058it_nat > $o ).

thf(sy_c_Wellfounded_Ofinite__psubset_001t__Int__Oint,type,
    finite_psubset_int: set_Pr2522554150109002629et_int ).

thf(sy_c_Wellfounded_Ofinite__psubset_001t__Nat__Onat,type,
    finite_psubset_nat: set_Pr5488025237498180813et_nat ).

thf(sy_c_Wellfounded_Ofinite__psubset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    finite469560695537375940at_nat: set_Pr4329608150637261639at_nat ).

thf(sy_c_Wellfounded_Oless__than,type,
    less_than: set_Pr1261947904930325089at_nat ).

thf(sy_c_Wellfounded_Omax__ext_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    max_ex8135407076693332796at_nat: set_Pr8693737435421807431at_nat > set_Pr4329608150637261639at_nat ).

thf(sy_c_Wellfounded_Omin__ext_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    min_ex6901939911449802026at_nat: set_Pr8693737435421807431at_nat > set_Pr4329608150637261639at_nat ).

thf(sy_c_Wellfounded_Opred__nat,type,
    pred_nat: set_Pr1261947904930325089at_nat ).

thf(sy_c_Wellfounded_Owf_001t__Int__Oint,type,
    wf_int: set_Pr958786334691620121nt_int > $o ).

thf(sy_c_Wellfounded_Owf_001t__Nat__Onat,type,
    wf_nat: set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_member_001t__Code____Numeral__Ointeger,type,
    member_Code_integer: code_integer > set_Code_integer > $o ).

thf(sy_c_member_001t__Code____Numeral__Onatural,type,
    member_Code_natural: code_natural > set_Code_natural > $o ).

thf(sy_c_member_001t__Int__Oint,type,
    member_int: int > set_int > $o ).

thf(sy_c_member_001t__List__Olist_It__Nat__Onat_J,type,
    member_list_nat: list_nat > set_list_nat > $o ).

thf(sy_c_member_001t__List__Olist_It__String__Ochar_J,type,
    member_list_char: list_char > set_list_char > $o ).

thf(sy_c_member_001t__Nat__Onat,type,
    member_nat: nat > set_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Code____Numeral__Ointeger_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    member3068662437193594005nteger: produc8763457246119570046nteger > set_Pr8056137968301705908nteger > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Int__Oint_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    member7034335876925520548nt_int: produc7773217078559923341nt_int > set_Pr1872883991513573699nt_int > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J,type,
    member4164122664394876845nteger: produc1908205239877642774nteger > set_Pr1281608226676607948nteger > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Code____Numeral__Onatural_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    member3245610415464309390atural: produc989692990947075319atural > set_Pr4244404650639074861atural > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Int__Oint_M_062_It__Product____Type__Ounit_Mt__Code____Evaluation__Oterm_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_I_Eo_Mt__List__Olist_It__Code____Evaluation__Oterm_J_J_J_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    member7618704894036264090nt_int: produc2285326912895808259nt_int > set_Pr9222295170931077689nt_int > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    member5262025264175285858nt_int: product_prod_int_int > set_Pr958786334691620121nt_int > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    member8440522571783428010at_nat: product_prod_nat_nat > set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    member8206827879206165904at_nat: produc859450856879609959at_nat > set_Pr8693737435421807431at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Set__Oset_It__Int__Oint_J_Mt__Set__Oset_It__Int__Oint_J_J,type,
    member2572552093476627150et_int: produc2115011035271226405et_int > set_Pr2522554150109002629et_int > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Set__Oset_It__Nat__Onat_J_Mt__Set__Oset_It__Nat__Onat_J_J,type,
    member8277197624267554838et_nat: produc7819656566062154093et_nat > set_Pr5488025237498180813et_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_Mt__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_J,type,
    member444158400953824016od_o_o: produc2934264451710624999od_o_o > set_Pr1932065953672099015od_o_o > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    member4095101504841534314at_nat: produc732395585841259969at_nat > set_Pr457366540195662369at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    member8757157785044589968at_nat: produc3843707927480180839at_nat > set_Pr4329608150637261639at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Ounit,type,
    member_Product_unit: product_unit > set_Product_unit > $o ).

thf(sy_c_member_001t__Rat__Orat,type,
    member_rat: rat > set_rat > $o ).

thf(sy_c_member_001t__Set__Oset_It__Nat__Onat_J,type,
    member_set_nat: set_nat > set_set_nat > $o ).

thf(sy_c_member_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    member2340774599025711042nt_int: set_Pr958786334691620121nt_int > set_se6260736226359567993nt_int > $o ).

thf(sy_c_member_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    member2643936169264416010at_nat: set_Pr1261947904930325089at_nat > set_se7855581050983116737at_nat > $o ).

thf(sy_c_member_001t__String__Ochar,type,
    member_char: char > set_char > $o ).

thf(sy_v_P,type,
    p: a > $o ).

thf(sy_v_h,type,
    h: heap_e7401611519738050253t_unit ).

thf(sy_v_x,type,
    x: a ).

% Relevant facts (8139)
thf(fact_0_success__ifI,axiom,
    ! [C: $o,T: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,E: heap_Time_Heap_a] :
      ( ( C
       => ( heap_Time_success_a @ T @ H ) )
     => ( ( ~ C
         => ( heap_Time_success_a @ E @ H ) )
       => ( heap_Time_success_a @ ( if_Heap_Time_Heap_a @ C @ T @ E ) @ H ) ) ) ).

% success_ifI
thf(fact_1_success__tapI,axiom,
    ! [F: heap_e7401611519738050253t_unit > a,H: heap_e7401611519738050253t_unit] : ( heap_Time_success_a @ ( heap_Time_tap_a @ F ) @ H ) ).

% success_tapI
thf(fact_2_success__guardI,axiom,
    ! [P: heap_e7401611519738050253t_unit > $o,H: heap_e7401611519738050253t_unit,F: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat] :
      ( ( P @ H )
     => ( heap_Time_success_a @ ( heap_Time_guard_a @ P @ F ) @ H ) ) ).

% success_guardI
thf(fact_3_success__ureturnI,axiom,
    ! [X: a,H: heap_e7401611519738050253t_unit] : ( heap_Time_success_a @ ( heap_Time_ureturn_a @ X ) @ H ) ).

% success_ureturnI
thf(fact_4_success__heapI,axiom,
    ! [F: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat,H: heap_e7401611519738050253t_unit] : ( heap_Time_success_a @ ( heap_Time_heap_a @ F ) @ H ) ).

% success_heapI
thf(fact_5_success__returnI,axiom,
    ! [X: a,H: heap_e7401611519738050253t_unit] : ( heap_Time_success_a @ ( heap_Time_return_a @ X ) @ H ) ).

% success_returnI
thf(fact_6_effect__success,axiom,
    ! [C: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat] :
      ( ( heap_Time_effect_a @ C @ H @ H2 @ R @ N )
     => ( heap_Time_success_a @ C @ H ) ) ).

% effect_success
thf(fact_7_success__effectE,axiom,
    ! [C: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit] :
      ( ( heap_Time_success_a @ C @ H )
     => ~ ! [R2: a,H3: heap_e7401611519738050253t_unit,N2: nat] :
            ~ ( heap_Time_effect_a @ C @ H @ H3 @ R2 @ N2 ) ) ).

% success_effectE
thf(fact_8_execute__assert_I2_J,axiom,
    ! [P: a > $o,X: a,H: heap_e7401611519738050253t_unit] :
      ( ~ ( P @ X )
     => ( ( heap_Time_execute_a @ ( heap_Time_assert_a @ P @ X ) @ H )
        = none_P2651198173097904984it_nat ) ) ).

% execute_assert(2)
thf(fact_9_success__bind__effectI,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,X: a,N: nat,G: a > heap_Time_Heap_a] :
      ( ( heap_Time_effect_a @ F @ H @ H2 @ X @ N )
     => ( ( heap_Time_success_a @ ( G @ X ) @ H2 )
       => ( heap_Time_success_a @ ( heap_Time_bind_a_a @ F @ G ) @ H ) ) ) ).

% success_bind_effectI
thf(fact_10_successI,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit] :
      ( ( ( heap_Time_execute_a @ F @ H )
       != none_P2651198173097904984it_nat )
     => ( heap_Time_success_a @ F @ H ) ) ).

% successI
thf(fact_11_success__def,axiom,
    ( heap_Time_success_a
    = ( ^ [F2: heap_Time_Heap_a,H4: heap_e7401611519738050253t_unit] :
          ( ( heap_Time_execute_a @ F2 @ H4 )
         != none_P2651198173097904984it_nat ) ) ) ).

% success_def
thf(fact_12_execute__bind_I2_J,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,G: a > heap_Time_Heap_a] :
      ( ( ( heap_Time_execute_a @ F @ H )
        = none_P2651198173097904984it_nat )
     => ( ( heap_Time_execute_a @ ( heap_Time_bind_a_a @ F @ G ) @ H )
        = none_P2651198173097904984it_nat ) ) ).

% execute_bind(2)
thf(fact_13_execute__guard_I1_J,axiom,
    ! [P: heap_e7401611519738050253t_unit > $o,H: heap_e7401611519738050253t_unit,F: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat] :
      ( ~ ( P @ H )
     => ( ( heap_Time_execute_a @ ( heap_Time_guard_a @ P @ F ) @ H )
        = none_P2651198173097904984it_nat ) ) ).

% execute_guard(1)
thf(fact_14_effect__deterministic_I3_J,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,A: a,N: nat,H5: heap_e7401611519738050253t_unit,B: a,N3: nat] :
      ( ( heap_Time_effect_a @ F @ H @ H2 @ A @ N )
     => ( ( heap_Time_effect_a @ F @ H @ H5 @ B @ N3 )
       => ( N = N3 ) ) ) ).

% effect_deterministic(3)
thf(fact_15_effect__deterministic_I2_J,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,A: a,N: nat,H5: heap_e7401611519738050253t_unit,B: a,N3: nat] :
      ( ( heap_Time_effect_a @ F @ H @ H2 @ A @ N )
     => ( ( heap_Time_effect_a @ F @ H @ H5 @ B @ N3 )
       => ( H2 = H5 ) ) ) ).

% effect_deterministic(2)
thf(fact_16_effect__deterministic_I1_J,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,A: a,N: nat,H5: heap_e7401611519738050253t_unit,B: a,N3: nat] :
      ( ( heap_Time_effect_a @ F @ H @ H2 @ A @ N )
     => ( ( heap_Time_effect_a @ F @ H @ H5 @ B @ N3 )
       => ( A = B ) ) ) ).

% effect_deterministic(1)
thf(fact_17_Heap__eqI,axiom,
    ! [F: heap_Time_Heap_a,G: heap_Time_Heap_a] :
      ( ! [H6: heap_e7401611519738050253t_unit] :
          ( ( heap_Time_execute_a @ F @ H6 )
          = ( heap_Time_execute_a @ G @ H6 ) )
     => ( F = G ) ) ).

% Heap_eqI
thf(fact_18_effect__ifE,axiom,
    ! [C: $o,T: heap_Time_Heap_a,E: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat] :
      ( ( heap_Time_effect_a @ ( if_Heap_Time_Heap_a @ C @ T @ E ) @ H @ H2 @ R @ N )
     => ( ( C
         => ~ ( heap_Time_effect_a @ T @ H @ H2 @ R @ N ) )
       => ~ ( ~ C
           => ~ ( heap_Time_effect_a @ E @ H @ H2 @ R @ N ) ) ) ) ).

% effect_ifE
thf(fact_19_effect__ifI,axiom,
    ! [C: $o,T: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat,E: heap_Time_Heap_a] :
      ( ( C
       => ( heap_Time_effect_a @ T @ H @ H2 @ R @ N ) )
     => ( ( ~ C
         => ( heap_Time_effect_a @ E @ H @ H2 @ R @ N ) )
       => ( heap_Time_effect_a @ ( if_Heap_Time_Heap_a @ C @ T @ E ) @ H @ H2 @ R @ N ) ) ) ).

% effect_ifI
thf(fact_20_bind__ureturn,axiom,
    ! [F: heap_Time_Heap_a] :
      ( ( heap_Time_bind_a_a @ F @ heap_Time_ureturn_a )
      = F ) ).

% bind_ureturn
thf(fact_21_execute__raise,axiom,
    ! [S: list_char] :
      ( ( heap_Time_execute_a @ ( heap_Time_raise_a @ S ) )
      = ( ^ [Uu: heap_e7401611519738050253t_unit] : none_P2651198173097904984it_nat ) ) ).

% execute_raise
thf(fact_22_effect__tapE,axiom,
    ! [F: heap_e7401611519738050253t_unit > a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat] :
      ( ( heap_Time_effect_a @ ( heap_Time_tap_a @ F ) @ H @ H2 @ R @ N )
     => ~ ( ( H2 = H )
         => ( ( R
              = ( F @ H ) )
           => ( N != one_one_nat ) ) ) ) ).

% effect_tapE
thf(fact_23_effect__tapI,axiom,
    ! [H2: heap_e7401611519738050253t_unit,H: heap_e7401611519738050253t_unit,R: a,F: heap_e7401611519738050253t_unit > a] :
      ( ( H2 = H )
     => ( ( R
          = ( F @ H ) )
       => ( heap_Time_effect_a @ ( heap_Time_tap_a @ F ) @ H @ H2 @ R @ one_one_nat ) ) ) ).

% effect_tapI
thf(fact_24_effect__raiseE,axiom,
    ! [X: list_char,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat] :
      ~ ( heap_Time_effect_a @ ( heap_Time_raise_a @ X ) @ H @ H2 @ R @ N ) ).

% effect_raiseE
thf(fact_25_effect__ureturnE,axiom,
    ! [X: a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat] :
      ( ( heap_Time_effect_a @ ( heap_Time_ureturn_a @ X ) @ H @ H2 @ R @ N )
     => ~ ( ( R = X )
         => ( ( H2 = H )
           => ( N != zero_zero_nat ) ) ) ) ).

% effect_ureturnE
thf(fact_26_effect__ureturnI,axiom,
    ! [H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,X: a] :
      ( ( H = H2 )
     => ( heap_Time_effect_a @ ( heap_Time_ureturn_a @ X ) @ H @ H2 @ X @ zero_zero_nat ) ) ).

% effect_ureturnI
thf(fact_27_effect__returnE,axiom,
    ! [X: a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat] :
      ( ( heap_Time_effect_a @ ( heap_Time_return_a @ X ) @ H @ H2 @ R @ N )
     => ~ ( ( R = X )
         => ( ( H2 = H )
           => ( N != one_one_nat ) ) ) ) ).

% effect_returnE
thf(fact_28_effect__returnI,axiom,
    ! [H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,X: a] :
      ( ( H = H2 )
     => ( heap_Time_effect_a @ ( heap_Time_return_a @ X ) @ H @ H2 @ X @ one_one_nat ) ) ).

% effect_returnI
thf(fact_29_execute__guard_I2_J,axiom,
    ! [P: heap_e7401611519738050253t_unit > $o,H: heap_e7401611519738050253t_unit,F: heap_e7401611519738050253t_unit > produc8664842809031399944it_nat] :
      ( ( P @ H )
     => ( ( heap_T875086893843062177t_unit @ ( heap_T8440541562793052209t_unit @ P @ F ) @ H )
        = ( some_P1914260805536162275it_nat @ ( F @ H ) ) ) ) ).

% execute_guard(2)
thf(fact_30_execute__guard_I2_J,axiom,
    ! [P: heap_e7401611519738050253t_unit > $o,H: heap_e7401611519738050253t_unit,F: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat] :
      ( ( P @ H )
     => ( ( heap_Time_execute_a @ ( heap_Time_guard_a @ P @ F ) @ H )
        = ( some_P7913643980934408916it_nat @ ( F @ H ) ) ) ) ).

% execute_guard(2)
thf(fact_31_effect__bindE,axiom,
    ! [F: heap_Time_Heap_a,G: a > heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,H5: heap_e7401611519738050253t_unit,R3: a,N: nat] :
      ( ( heap_Time_effect_a @ ( heap_Time_bind_a_a @ F @ G ) @ H @ H5 @ R3 @ N )
     => ~ ! [H3: heap_e7401611519738050253t_unit,R2: a,N1: nat] :
            ( ( heap_Time_effect_a @ F @ H @ H3 @ R2 @ N1 )
           => ! [N22: nat] :
                ( ( heap_Time_effect_a @ ( G @ R2 ) @ H3 @ H5 @ R3 @ N22 )
               => ( N
                 != ( plus_plus_nat @ N1 @ N22 ) ) ) ) ) ).

% effect_bindE
thf(fact_32_option_Oinject,axiom,
    ! [X2: produc8664842809031399944it_nat,Y2: produc8664842809031399944it_nat] :
      ( ( ( some_P1914260805536162275it_nat @ X2 )
        = ( some_P1914260805536162275it_nat @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_33_option_Oinject,axiom,
    ! [X2: num,Y2: num] :
      ( ( ( some_num @ X2 )
        = ( some_num @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_34_not__Some__eq,axiom,
    ! [X: option3562590408128118217it_nat] :
      ( ( ! [Y: produc3260487557148687353it_nat] :
            ( X
           != ( some_P7913643980934408916it_nat @ Y ) ) )
      = ( X = none_P2651198173097904984it_nat ) ) ).

% not_Some_eq
thf(fact_35_not__Some__eq,axiom,
    ! [X: option8956607266484857688it_nat] :
      ( ( ! [Y: produc8664842809031399944it_nat] :
            ( X
           != ( some_P1914260805536162275it_nat @ Y ) ) )
      = ( X = none_P9117596204409417319it_nat ) ) ).

% not_Some_eq
thf(fact_36_not__Some__eq,axiom,
    ! [X: option_num] :
      ( ( ! [Y: num] :
            ( X
           != ( some_num @ Y ) ) )
      = ( X = none_num ) ) ).

% not_Some_eq
thf(fact_37_not__None__eq,axiom,
    ! [X: option3562590408128118217it_nat] :
      ( ( X != none_P2651198173097904984it_nat )
      = ( ? [Y: produc3260487557148687353it_nat] :
            ( X
            = ( some_P7913643980934408916it_nat @ Y ) ) ) ) ).

% not_None_eq
thf(fact_38_not__None__eq,axiom,
    ! [X: option8956607266484857688it_nat] :
      ( ( X != none_P9117596204409417319it_nat )
      = ( ? [Y: produc8664842809031399944it_nat] :
            ( X
            = ( some_P1914260805536162275it_nat @ Y ) ) ) ) ).

% not_None_eq
thf(fact_39_not__None__eq,axiom,
    ! [X: option_num] :
      ( ( X != none_num )
      = ( ? [Y: num] :
            ( X
            = ( some_num @ Y ) ) ) ) ).

% not_None_eq
thf(fact_40_combine__options__cases,axiom,
    ! [X: option3562590408128118217it_nat,P: option3562590408128118217it_nat > option3562590408128118217it_nat > $o,Y3: option3562590408128118217it_nat] :
      ( ( ( X = none_P2651198173097904984it_nat )
       => ( P @ X @ Y3 ) )
     => ( ( ( Y3 = none_P2651198173097904984it_nat )
         => ( P @ X @ Y3 ) )
       => ( ! [A2: produc3260487557148687353it_nat,B2: produc3260487557148687353it_nat] :
              ( ( X
                = ( some_P7913643980934408916it_nat @ A2 ) )
             => ( ( Y3
                  = ( some_P7913643980934408916it_nat @ B2 ) )
               => ( P @ X @ Y3 ) ) )
         => ( P @ X @ Y3 ) ) ) ) ).

% combine_options_cases
thf(fact_41_combine__options__cases,axiom,
    ! [X: option3562590408128118217it_nat,P: option3562590408128118217it_nat > option8956607266484857688it_nat > $o,Y3: option8956607266484857688it_nat] :
      ( ( ( X = none_P2651198173097904984it_nat )
       => ( P @ X @ Y3 ) )
     => ( ( ( Y3 = none_P9117596204409417319it_nat )
         => ( P @ X @ Y3 ) )
       => ( ! [A2: produc3260487557148687353it_nat,B2: produc8664842809031399944it_nat] :
              ( ( X
                = ( some_P7913643980934408916it_nat @ A2 ) )
             => ( ( Y3
                  = ( some_P1914260805536162275it_nat @ B2 ) )
               => ( P @ X @ Y3 ) ) )
         => ( P @ X @ Y3 ) ) ) ) ).

% combine_options_cases
thf(fact_42_combine__options__cases,axiom,
    ! [X: option3562590408128118217it_nat,P: option3562590408128118217it_nat > option_num > $o,Y3: option_num] :
      ( ( ( X = none_P2651198173097904984it_nat )
       => ( P @ X @ Y3 ) )
     => ( ( ( Y3 = none_num )
         => ( P @ X @ Y3 ) )
       => ( ! [A2: produc3260487557148687353it_nat,B2: num] :
              ( ( X
                = ( some_P7913643980934408916it_nat @ A2 ) )
             => ( ( Y3
                  = ( some_num @ B2 ) )
               => ( P @ X @ Y3 ) ) )
         => ( P @ X @ Y3 ) ) ) ) ).

% combine_options_cases
thf(fact_43_combine__options__cases,axiom,
    ! [X: option8956607266484857688it_nat,P: option8956607266484857688it_nat > option3562590408128118217it_nat > $o,Y3: option3562590408128118217it_nat] :
      ( ( ( X = none_P9117596204409417319it_nat )
       => ( P @ X @ Y3 ) )
     => ( ( ( Y3 = none_P2651198173097904984it_nat )
         => ( P @ X @ Y3 ) )
       => ( ! [A2: produc8664842809031399944it_nat,B2: produc3260487557148687353it_nat] :
              ( ( X
                = ( some_P1914260805536162275it_nat @ A2 ) )
             => ( ( Y3
                  = ( some_P7913643980934408916it_nat @ B2 ) )
               => ( P @ X @ Y3 ) ) )
         => ( P @ X @ Y3 ) ) ) ) ).

% combine_options_cases
thf(fact_44_combine__options__cases,axiom,
    ! [X: option8956607266484857688it_nat,P: option8956607266484857688it_nat > option8956607266484857688it_nat > $o,Y3: option8956607266484857688it_nat] :
      ( ( ( X = none_P9117596204409417319it_nat )
       => ( P @ X @ Y3 ) )
     => ( ( ( Y3 = none_P9117596204409417319it_nat )
         => ( P @ X @ Y3 ) )
       => ( ! [A2: produc8664842809031399944it_nat,B2: produc8664842809031399944it_nat] :
              ( ( X
                = ( some_P1914260805536162275it_nat @ A2 ) )
             => ( ( Y3
                  = ( some_P1914260805536162275it_nat @ B2 ) )
               => ( P @ X @ Y3 ) ) )
         => ( P @ X @ Y3 ) ) ) ) ).

% combine_options_cases
thf(fact_45_combine__options__cases,axiom,
    ! [X: option8956607266484857688it_nat,P: option8956607266484857688it_nat > option_num > $o,Y3: option_num] :
      ( ( ( X = none_P9117596204409417319it_nat )
       => ( P @ X @ Y3 ) )
     => ( ( ( Y3 = none_num )
         => ( P @ X @ Y3 ) )
       => ( ! [A2: produc8664842809031399944it_nat,B2: num] :
              ( ( X
                = ( some_P1914260805536162275it_nat @ A2 ) )
             => ( ( Y3
                  = ( some_num @ B2 ) )
               => ( P @ X @ Y3 ) ) )
         => ( P @ X @ Y3 ) ) ) ) ).

% combine_options_cases
thf(fact_46_combine__options__cases,axiom,
    ! [X: option_num,P: option_num > option3562590408128118217it_nat > $o,Y3: option3562590408128118217it_nat] :
      ( ( ( X = none_num )
       => ( P @ X @ Y3 ) )
     => ( ( ( Y3 = none_P2651198173097904984it_nat )
         => ( P @ X @ Y3 ) )
       => ( ! [A2: num,B2: produc3260487557148687353it_nat] :
              ( ( X
                = ( some_num @ A2 ) )
             => ( ( Y3
                  = ( some_P7913643980934408916it_nat @ B2 ) )
               => ( P @ X @ Y3 ) ) )
         => ( P @ X @ Y3 ) ) ) ) ).

% combine_options_cases
thf(fact_47_combine__options__cases,axiom,
    ! [X: option_num,P: option_num > option8956607266484857688it_nat > $o,Y3: option8956607266484857688it_nat] :
      ( ( ( X = none_num )
       => ( P @ X @ Y3 ) )
     => ( ( ( Y3 = none_P9117596204409417319it_nat )
         => ( P @ X @ Y3 ) )
       => ( ! [A2: num,B2: produc8664842809031399944it_nat] :
              ( ( X
                = ( some_num @ A2 ) )
             => ( ( Y3
                  = ( some_P1914260805536162275it_nat @ B2 ) )
               => ( P @ X @ Y3 ) ) )
         => ( P @ X @ Y3 ) ) ) ) ).

% combine_options_cases
thf(fact_48_combine__options__cases,axiom,
    ! [X: option_num,P: option_num > option_num > $o,Y3: option_num] :
      ( ( ( X = none_num )
       => ( P @ X @ Y3 ) )
     => ( ( ( Y3 = none_num )
         => ( P @ X @ Y3 ) )
       => ( ! [A2: num,B2: num] :
              ( ( X
                = ( some_num @ A2 ) )
             => ( ( Y3
                  = ( some_num @ B2 ) )
               => ( P @ X @ Y3 ) ) )
         => ( P @ X @ Y3 ) ) ) ) ).

% combine_options_cases
thf(fact_49_split__option__all,axiom,
    ( ( ^ [P2: option3562590408128118217it_nat > $o] :
        ! [X3: option3562590408128118217it_nat] : ( P2 @ X3 ) )
    = ( ^ [P3: option3562590408128118217it_nat > $o] :
          ( ( P3 @ none_P2651198173097904984it_nat )
          & ! [X4: produc3260487557148687353it_nat] : ( P3 @ ( some_P7913643980934408916it_nat @ X4 ) ) ) ) ) ).

% split_option_all
thf(fact_50_split__option__all,axiom,
    ( ( ^ [P2: option8956607266484857688it_nat > $o] :
        ! [X3: option8956607266484857688it_nat] : ( P2 @ X3 ) )
    = ( ^ [P3: option8956607266484857688it_nat > $o] :
          ( ( P3 @ none_P9117596204409417319it_nat )
          & ! [X4: produc8664842809031399944it_nat] : ( P3 @ ( some_P1914260805536162275it_nat @ X4 ) ) ) ) ) ).

% split_option_all
thf(fact_51_split__option__all,axiom,
    ( ( ^ [P2: option_num > $o] :
        ! [X3: option_num] : ( P2 @ X3 ) )
    = ( ^ [P3: option_num > $o] :
          ( ( P3 @ none_num )
          & ! [X4: num] : ( P3 @ ( some_num @ X4 ) ) ) ) ) ).

% split_option_all
thf(fact_52_split__option__ex,axiom,
    ( ( ^ [P2: option3562590408128118217it_nat > $o] :
        ? [X3: option3562590408128118217it_nat] : ( P2 @ X3 ) )
    = ( ^ [P3: option3562590408128118217it_nat > $o] :
          ( ( P3 @ none_P2651198173097904984it_nat )
          | ? [X4: produc3260487557148687353it_nat] : ( P3 @ ( some_P7913643980934408916it_nat @ X4 ) ) ) ) ) ).

% split_option_ex
thf(fact_53_split__option__ex,axiom,
    ( ( ^ [P2: option8956607266484857688it_nat > $o] :
        ? [X3: option8956607266484857688it_nat] : ( P2 @ X3 ) )
    = ( ^ [P3: option8956607266484857688it_nat > $o] :
          ( ( P3 @ none_P9117596204409417319it_nat )
          | ? [X4: produc8664842809031399944it_nat] : ( P3 @ ( some_P1914260805536162275it_nat @ X4 ) ) ) ) ) ).

% split_option_ex
thf(fact_54_split__option__ex,axiom,
    ( ( ^ [P2: option_num > $o] :
        ? [X3: option_num] : ( P2 @ X3 ) )
    = ( ^ [P3: option_num > $o] :
          ( ( P3 @ none_num )
          | ? [X4: num] : ( P3 @ ( some_num @ X4 ) ) ) ) ) ).

% split_option_ex
thf(fact_55_mem__Collect__eq,axiom,
    ! [A: set_Pr1261947904930325089at_nat,P: set_Pr1261947904930325089at_nat > $o] :
      ( ( member2643936169264416010at_nat @ A @ ( collec5514110066124741708at_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_56_mem__Collect__eq,axiom,
    ! [A: set_Pr958786334691620121nt_int,P: set_Pr958786334691620121nt_int > $o] :
      ( ( member2340774599025711042nt_int @ A @ ( collec5210948495886036740nt_int @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_57_mem__Collect__eq,axiom,
    ! [A: set_nat,P: set_nat > $o] :
      ( ( member_set_nat @ A @ ( collect_set_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_58_mem__Collect__eq,axiom,
    ! [A: nat,P: nat > $o] :
      ( ( member_nat @ A @ ( collect_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_59_mem__Collect__eq,axiom,
    ! [A: int,P: int > $o] :
      ( ( member_int @ A @ ( collect_int @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_60_Collect__mem__eq,axiom,
    ! [A3: set_se7855581050983116737at_nat] :
      ( ( collec5514110066124741708at_nat
        @ ^ [X4: set_Pr1261947904930325089at_nat] : ( member2643936169264416010at_nat @ X4 @ A3 ) )
      = A3 ) ).

% Collect_mem_eq
thf(fact_61_Collect__mem__eq,axiom,
    ! [A3: set_se6260736226359567993nt_int] :
      ( ( collec5210948495886036740nt_int
        @ ^ [X4: set_Pr958786334691620121nt_int] : ( member2340774599025711042nt_int @ X4 @ A3 ) )
      = A3 ) ).

% Collect_mem_eq
thf(fact_62_Collect__mem__eq,axiom,
    ! [A3: set_set_nat] :
      ( ( collect_set_nat
        @ ^ [X4: set_nat] : ( member_set_nat @ X4 @ A3 ) )
      = A3 ) ).

% Collect_mem_eq
thf(fact_63_Collect__mem__eq,axiom,
    ! [A3: set_nat] :
      ( ( collect_nat
        @ ^ [X4: nat] : ( member_nat @ X4 @ A3 ) )
      = A3 ) ).

% Collect_mem_eq
thf(fact_64_Collect__mem__eq,axiom,
    ! [A3: set_int] :
      ( ( collect_int
        @ ^ [X4: int] : ( member_int @ X4 @ A3 ) )
      = A3 ) ).

% Collect_mem_eq
thf(fact_65_Collect__cong,axiom,
    ! [P: set_Pr1261947904930325089at_nat > $o,Q: set_Pr1261947904930325089at_nat > $o] :
      ( ! [X5: set_Pr1261947904930325089at_nat] :
          ( ( P @ X5 )
          = ( Q @ X5 ) )
     => ( ( collec5514110066124741708at_nat @ P )
        = ( collec5514110066124741708at_nat @ Q ) ) ) ).

% Collect_cong
thf(fact_66_Collect__cong,axiom,
    ! [P: set_Pr958786334691620121nt_int > $o,Q: set_Pr958786334691620121nt_int > $o] :
      ( ! [X5: set_Pr958786334691620121nt_int] :
          ( ( P @ X5 )
          = ( Q @ X5 ) )
     => ( ( collec5210948495886036740nt_int @ P )
        = ( collec5210948495886036740nt_int @ Q ) ) ) ).

% Collect_cong
thf(fact_67_Collect__cong,axiom,
    ! [P: set_nat > $o,Q: set_nat > $o] :
      ( ! [X5: set_nat] :
          ( ( P @ X5 )
          = ( Q @ X5 ) )
     => ( ( collect_set_nat @ P )
        = ( collect_set_nat @ Q ) ) ) ).

% Collect_cong
thf(fact_68_Collect__cong,axiom,
    ! [P: nat > $o,Q: nat > $o] :
      ( ! [X5: nat] :
          ( ( P @ X5 )
          = ( Q @ X5 ) )
     => ( ( collect_nat @ P )
        = ( collect_nat @ Q ) ) ) ).

% Collect_cong
thf(fact_69_Collect__cong,axiom,
    ! [P: int > $o,Q: int > $o] :
      ( ! [X5: int] :
          ( ( P @ X5 )
          = ( Q @ X5 ) )
     => ( ( collect_int @ P )
        = ( collect_int @ Q ) ) ) ).

% Collect_cong
thf(fact_70_option_Oexhaust,axiom,
    ! [Y3: option3562590408128118217it_nat] :
      ( ( Y3 != none_P2651198173097904984it_nat )
     => ~ ! [X22: produc3260487557148687353it_nat] :
            ( Y3
           != ( some_P7913643980934408916it_nat @ X22 ) ) ) ).

% option.exhaust
thf(fact_71_option_Oexhaust,axiom,
    ! [Y3: option8956607266484857688it_nat] :
      ( ( Y3 != none_P9117596204409417319it_nat )
     => ~ ! [X22: produc8664842809031399944it_nat] :
            ( Y3
           != ( some_P1914260805536162275it_nat @ X22 ) ) ) ).

% option.exhaust
thf(fact_72_option_Oexhaust,axiom,
    ! [Y3: option_num] :
      ( ( Y3 != none_num )
     => ~ ! [X22: num] :
            ( Y3
           != ( some_num @ X22 ) ) ) ).

% option.exhaust
thf(fact_73_option_OdiscI,axiom,
    ! [Option: option3562590408128118217it_nat,X2: produc3260487557148687353it_nat] :
      ( ( Option
        = ( some_P7913643980934408916it_nat @ X2 ) )
     => ( Option != none_P2651198173097904984it_nat ) ) ).

% option.discI
thf(fact_74_option_OdiscI,axiom,
    ! [Option: option8956607266484857688it_nat,X2: produc8664842809031399944it_nat] :
      ( ( Option
        = ( some_P1914260805536162275it_nat @ X2 ) )
     => ( Option != none_P9117596204409417319it_nat ) ) ).

% option.discI
thf(fact_75_option_OdiscI,axiom,
    ! [Option: option_num,X2: num] :
      ( ( Option
        = ( some_num @ X2 ) )
     => ( Option != none_num ) ) ).

% option.discI
thf(fact_76_option_Odistinct_I1_J,axiom,
    ! [X2: produc3260487557148687353it_nat] :
      ( none_P2651198173097904984it_nat
     != ( some_P7913643980934408916it_nat @ X2 ) ) ).

% option.distinct(1)
thf(fact_77_option_Odistinct_I1_J,axiom,
    ! [X2: produc8664842809031399944it_nat] :
      ( none_P9117596204409417319it_nat
     != ( some_P1914260805536162275it_nat @ X2 ) ) ).

% option.distinct(1)
thf(fact_78_option_Odistinct_I1_J,axiom,
    ! [X2: num] :
      ( none_num
     != ( some_num @ X2 ) ) ).

% option.distinct(1)
thf(fact_79_effect__bindI,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat,G: a > heap_Time_Heap_a,H5: heap_e7401611519738050253t_unit,R3: a,N3: nat] :
      ( ( heap_Time_effect_a @ F @ H @ H2 @ R @ N )
     => ( ( heap_Time_effect_a @ ( G @ R ) @ H2 @ H5 @ R3 @ N3 )
       => ( heap_Time_effect_a @ ( heap_Time_bind_a_a @ F @ G ) @ H @ H5 @ R3 @ ( plus_plus_nat @ N @ N3 ) ) ) ) ).

% effect_bindI
thf(fact_80_Nat_Oadd__0__right,axiom,
    ! [M: nat] :
      ( ( plus_plus_nat @ M @ zero_zero_nat )
      = M ) ).

% Nat.add_0_right
thf(fact_81_add__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        & ( N = zero_zero_nat ) ) ) ).

% add_is_0
thf(fact_82_double__eq__0__iff,axiom,
    ! [A: int] :
      ( ( ( plus_plus_int @ A @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% double_eq_0_iff
thf(fact_83_double__eq__0__iff,axiom,
    ! [A: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% double_eq_0_iff
thf(fact_84_double__eq__0__iff,axiom,
    ! [A: rat] :
      ( ( ( plus_plus_rat @ A @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% double_eq_0_iff
thf(fact_85_add__0,axiom,
    ! [A: literal] :
      ( ( plus_plus_literal @ zero_zero_literal @ A )
      = A ) ).

% add_0
thf(fact_86_add__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

% add_0
thf(fact_87_add__0,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ zero_zero_int @ A )
      = A ) ).

% add_0
thf(fact_88_add__0,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ zero_z3403309356797280102nteger @ A )
      = A ) ).

% add_0
thf(fact_89_add__0,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ zero_zero_rat @ A )
      = A ) ).

% add_0
thf(fact_90_add__0,axiom,
    ! [A: code_natural] :
      ( ( plus_p4538020629002901425atural @ zero_z2226904508553997617atural @ A )
      = A ) ).

% add_0
thf(fact_91_zero__eq__add__iff__both__eq__0,axiom,
    ! [X: nat,Y3: nat] :
      ( ( zero_zero_nat
        = ( plus_plus_nat @ X @ Y3 ) )
      = ( ( X = zero_zero_nat )
        & ( Y3 = zero_zero_nat ) ) ) ).

% zero_eq_add_iff_both_eq_0
thf(fact_92_add__eq__0__iff__both__eq__0,axiom,
    ! [X: nat,Y3: nat] :
      ( ( ( plus_plus_nat @ X @ Y3 )
        = zero_zero_nat )
      = ( ( X = zero_zero_nat )
        & ( Y3 = zero_zero_nat ) ) ) ).

% add_eq_0_iff_both_eq_0
thf(fact_93_add__cancel__right__right,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( plus_plus_nat @ A @ B ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_right
thf(fact_94_add__cancel__right__right,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( plus_plus_int @ A @ B ) )
      = ( B = zero_zero_int ) ) ).

% add_cancel_right_right
thf(fact_95_add__cancel__right__right,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A
        = ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( B = zero_z3403309356797280102nteger ) ) ).

% add_cancel_right_right
thf(fact_96_add__cancel__right__right,axiom,
    ! [A: rat,B: rat] :
      ( ( A
        = ( plus_plus_rat @ A @ B ) )
      = ( B = zero_zero_rat ) ) ).

% add_cancel_right_right
thf(fact_97_add__cancel__right__right,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( A
        = ( plus_p4538020629002901425atural @ A @ B ) )
      = ( B = zero_z2226904508553997617atural ) ) ).

% add_cancel_right_right
thf(fact_98_add__cancel__right__left,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( plus_plus_nat @ B @ A ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_left
thf(fact_99_add__cancel__right__left,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( plus_plus_int @ B @ A ) )
      = ( B = zero_zero_int ) ) ).

% add_cancel_right_left
thf(fact_100_add__cancel__right__left,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A
        = ( plus_p5714425477246183910nteger @ B @ A ) )
      = ( B = zero_z3403309356797280102nteger ) ) ).

% add_cancel_right_left
thf(fact_101_add__cancel__right__left,axiom,
    ! [A: rat,B: rat] :
      ( ( A
        = ( plus_plus_rat @ B @ A ) )
      = ( B = zero_zero_rat ) ) ).

% add_cancel_right_left
thf(fact_102_add__cancel__right__left,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( A
        = ( plus_p4538020629002901425atural @ B @ A ) )
      = ( B = zero_z2226904508553997617atural ) ) ).

% add_cancel_right_left
thf(fact_103_add__cancel__left__right,axiom,
    ! [A: nat,B: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = A )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_right
thf(fact_104_add__cancel__left__right,axiom,
    ! [A: int,B: int] :
      ( ( ( plus_plus_int @ A @ B )
        = A )
      = ( B = zero_zero_int ) ) ).

% add_cancel_left_right
thf(fact_105_add__cancel__left__right,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ B )
        = A )
      = ( B = zero_z3403309356797280102nteger ) ) ).

% add_cancel_left_right
thf(fact_106_add__cancel__left__right,axiom,
    ! [A: rat,B: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = A )
      = ( B = zero_zero_rat ) ) ).

% add_cancel_left_right
thf(fact_107_add__cancel__left__right,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( plus_p4538020629002901425atural @ A @ B )
        = A )
      = ( B = zero_z2226904508553997617atural ) ) ).

% add_cancel_left_right
thf(fact_108_add__cancel__left__left,axiom,
    ! [B: nat,A: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = A )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_left
thf(fact_109_add__cancel__left__left,axiom,
    ! [B: int,A: int] :
      ( ( ( plus_plus_int @ B @ A )
        = A )
      = ( B = zero_zero_int ) ) ).

% add_cancel_left_left
thf(fact_110_add__cancel__left__left,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ B @ A )
        = A )
      = ( B = zero_z3403309356797280102nteger ) ) ).

% add_cancel_left_left
thf(fact_111_add__cancel__left__left,axiom,
    ! [B: rat,A: rat] :
      ( ( ( plus_plus_rat @ B @ A )
        = A )
      = ( B = zero_zero_rat ) ) ).

% add_cancel_left_left
thf(fact_112_add__cancel__left__left,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( ( plus_p4538020629002901425atural @ B @ A )
        = A )
      = ( B = zero_z2226904508553997617atural ) ) ).

% add_cancel_left_left
thf(fact_113_double__zero__sym,axiom,
    ! [A: int] :
      ( ( zero_zero_int
        = ( plus_plus_int @ A @ A ) )
      = ( A = zero_zero_int ) ) ).

% double_zero_sym
thf(fact_114_double__zero__sym,axiom,
    ! [A: code_integer] :
      ( ( zero_z3403309356797280102nteger
        = ( plus_p5714425477246183910nteger @ A @ A ) )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% double_zero_sym
thf(fact_115_double__zero__sym,axiom,
    ! [A: rat] :
      ( ( zero_zero_rat
        = ( plus_plus_rat @ A @ A ) )
      = ( A = zero_zero_rat ) ) ).

% double_zero_sym
thf(fact_116_add_Oright__neutral,axiom,
    ! [A: literal] :
      ( ( plus_plus_literal @ A @ zero_zero_literal )
      = A ) ).

% add.right_neutral
thf(fact_117_add_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.right_neutral
thf(fact_118_add_Oright__neutral,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ A @ zero_zero_int )
      = A ) ).

% add.right_neutral
thf(fact_119_add_Oright__neutral,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% add.right_neutral
thf(fact_120_add_Oright__neutral,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ A @ zero_zero_rat )
      = A ) ).

% add.right_neutral
thf(fact_121_add_Oright__neutral,axiom,
    ! [A: code_natural] :
      ( ( plus_p4538020629002901425atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% add.right_neutral
thf(fact_122_add__left__cancel,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = ( plus_plus_rat @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_123_add__left__cancel,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_124_add__left__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_125_add__right__cancel,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ( plus_plus_rat @ B @ A )
        = ( plus_plus_rat @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_126_add__right__cancel,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_127_add__right__cancel,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_128_zero__reorient,axiom,
    ! [X: nat] :
      ( ( zero_zero_nat = X )
      = ( X = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_129_zero__reorient,axiom,
    ! [X: int] :
      ( ( zero_zero_int = X )
      = ( X = zero_zero_int ) ) ).

% zero_reorient
thf(fact_130_zero__reorient,axiom,
    ! [X: code_integer] :
      ( ( zero_z3403309356797280102nteger = X )
      = ( X = zero_z3403309356797280102nteger ) ) ).

% zero_reorient
thf(fact_131_zero__reorient,axiom,
    ! [X: rat] :
      ( ( zero_zero_rat = X )
      = ( X = zero_zero_rat ) ) ).

% zero_reorient
thf(fact_132_zero__reorient,axiom,
    ! [X: code_natural] :
      ( ( zero_z2226904508553997617atural = X )
      = ( X = zero_z2226904508553997617atural ) ) ).

% zero_reorient
thf(fact_133_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_134_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_135_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_136_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_rat @ I @ K )
        = ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_137_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_nat @ I @ K )
        = ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_138_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_int @ I @ K )
        = ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_139_group__cancel_Oadd1,axiom,
    ! [A3: rat,K: rat,A: rat,B: rat] :
      ( ( A3
        = ( plus_plus_rat @ K @ A ) )
     => ( ( plus_plus_rat @ A3 @ B )
        = ( plus_plus_rat @ K @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_140_group__cancel_Oadd1,axiom,
    ! [A3: nat,K: nat,A: nat,B: nat] :
      ( ( A3
        = ( plus_plus_nat @ K @ A ) )
     => ( ( plus_plus_nat @ A3 @ B )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_141_group__cancel_Oadd1,axiom,
    ! [A3: int,K: int,A: int,B: int] :
      ( ( A3
        = ( plus_plus_int @ K @ A ) )
     => ( ( plus_plus_int @ A3 @ B )
        = ( plus_plus_int @ K @ ( plus_plus_int @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_142_group__cancel_Oadd2,axiom,
    ! [B3: rat,K: rat,B: rat,A: rat] :
      ( ( B3
        = ( plus_plus_rat @ K @ B ) )
     => ( ( plus_plus_rat @ A @ B3 )
        = ( plus_plus_rat @ K @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_143_group__cancel_Oadd2,axiom,
    ! [B3: nat,K: nat,B: nat,A: nat] :
      ( ( B3
        = ( plus_plus_nat @ K @ B ) )
     => ( ( plus_plus_nat @ A @ B3 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_144_group__cancel_Oadd2,axiom,
    ! [B3: int,K: int,B: int,A: int] :
      ( ( B3
        = ( plus_plus_int @ K @ B ) )
     => ( ( plus_plus_int @ A @ B3 )
        = ( plus_plus_int @ K @ ( plus_plus_int @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_145_add_Oassoc,axiom,
    ! [A: literal,B: literal,C: literal] :
      ( ( plus_plus_literal @ ( plus_plus_literal @ A @ B ) @ C )
      = ( plus_plus_literal @ A @ ( plus_plus_literal @ B @ C ) ) ) ).

% add.assoc
thf(fact_146_add_Oassoc,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ).

% add.assoc
thf(fact_147_add_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.assoc
thf(fact_148_add_Oassoc,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% add.assoc
thf(fact_149_add_Oleft__cancel,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = ( plus_plus_rat @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_150_add_Oleft__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_151_add_Oright__cancel,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ( plus_plus_rat @ B @ A )
        = ( plus_plus_rat @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_152_add_Oright__cancel,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_153_add_Ocommute,axiom,
    ( plus_plus_rat
    = ( ^ [A4: rat,B4: rat] : ( plus_plus_rat @ B4 @ A4 ) ) ) ).

% add.commute
thf(fact_154_add_Ocommute,axiom,
    ( plus_plus_nat
    = ( ^ [A4: nat,B4: nat] : ( plus_plus_nat @ B4 @ A4 ) ) ) ).

% add.commute
thf(fact_155_add_Ocommute,axiom,
    ( plus_plus_int
    = ( ^ [A4: int,B4: int] : ( plus_plus_int @ B4 @ A4 ) ) ) ).

% add.commute
thf(fact_156_add_Oleft__commute,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( plus_plus_rat @ B @ ( plus_plus_rat @ A @ C ) )
      = ( plus_plus_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ).

% add.left_commute
thf(fact_157_add_Oleft__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( plus_plus_nat @ B @ ( plus_plus_nat @ A @ C ) )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.left_commute
thf(fact_158_add_Oleft__commute,axiom,
    ! [B: int,A: int,C: int] :
      ( ( plus_plus_int @ B @ ( plus_plus_int @ A @ C ) )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% add.left_commute
thf(fact_159_add__left__imp__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = ( plus_plus_rat @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_160_add__left__imp__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_161_add__left__imp__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_162_add__right__imp__eq,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ( plus_plus_rat @ B @ A )
        = ( plus_plus_rat @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_163_add__right__imp__eq,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_164_add__right__imp__eq,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_165_one__reorient,axiom,
    ! [X: nat] :
      ( ( one_one_nat = X )
      = ( X = one_one_nat ) ) ).

% one_reorient
thf(fact_166_one__reorient,axiom,
    ! [X: int] :
      ( ( one_one_int = X )
      = ( X = one_one_int ) ) ).

% one_reorient
thf(fact_167_one__reorient,axiom,
    ! [X: code_integer] :
      ( ( one_one_Code_integer = X )
      = ( X = one_one_Code_integer ) ) ).

% one_reorient
thf(fact_168_one__reorient,axiom,
    ! [X: rat] :
      ( ( one_one_rat = X )
      = ( X = one_one_rat ) ) ).

% one_reorient
thf(fact_169_one__reorient,axiom,
    ! [X: code_natural] :
      ( ( one_one_Code_natural = X )
      = ( X = one_one_Code_natural ) ) ).

% one_reorient
thf(fact_170_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_171_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ zero_zero_int @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_172_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ zero_z3403309356797280102nteger @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_173_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ zero_zero_rat @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_174_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: code_natural] :
      ( ( plus_p4538020629002901425atural @ zero_z2226904508553997617atural @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_175_add_Ocomm__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.comm_neutral
thf(fact_176_add_Ocomm__neutral,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ A @ zero_zero_int )
      = A ) ).

% add.comm_neutral
thf(fact_177_add_Ocomm__neutral,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% add.comm_neutral
thf(fact_178_add_Ocomm__neutral,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ A @ zero_zero_rat )
      = A ) ).

% add.comm_neutral
thf(fact_179_add_Ocomm__neutral,axiom,
    ! [A: code_natural] :
      ( ( plus_p4538020629002901425atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% add.comm_neutral
thf(fact_180_add_Ogroup__left__neutral,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ zero_zero_int @ A )
      = A ) ).

% add.group_left_neutral
thf(fact_181_add_Ogroup__left__neutral,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ zero_z3403309356797280102nteger @ A )
      = A ) ).

% add.group_left_neutral
thf(fact_182_add_Ogroup__left__neutral,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ zero_zero_rat @ A )
      = A ) ).

% add.group_left_neutral
thf(fact_183_plus__nat_Oadd__0,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ N )
      = N ) ).

% plus_nat.add_0
thf(fact_184_add__eq__self__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = M )
     => ( N = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_185_bind__return,axiom,
    ! [F: heap_Time_Heap_a] :
      ( ( heap_Time_bind_a_a @ F @ heap_Time_return_a )
      = ( heap_T757603679106148408unit_a @ ( heap_Time_wait @ one_one_nat )
        @ ^ [Uu: product_unit] : F ) ) ).

% bind_return
thf(fact_186_Euclid__induct,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A2: nat,B2: nat] :
          ( ( P @ A2 @ B2 )
          = ( P @ B2 @ A2 ) )
     => ( ! [A2: nat] : ( P @ A2 @ zero_zero_nat )
       => ( ! [A2: nat,B2: nat] :
              ( ( P @ A2 @ B2 )
             => ( P @ A2 @ ( plus_plus_nat @ A2 @ B2 ) ) )
         => ( P @ A @ B ) ) ) ) ).

% Euclid_induct
thf(fact_187_zero__neq__one,axiom,
    zero_zero_nat != one_one_nat ).

% zero_neq_one
thf(fact_188_zero__neq__one,axiom,
    zero_zero_int != one_one_int ).

% zero_neq_one
thf(fact_189_zero__neq__one,axiom,
    zero_z3403309356797280102nteger != one_one_Code_integer ).

% zero_neq_one
thf(fact_190_zero__neq__one,axiom,
    zero_zero_rat != one_one_rat ).

% zero_neq_one
thf(fact_191_zero__neq__one,axiom,
    zero_z2226904508553997617atural != one_one_Code_natural ).

% zero_neq_one
thf(fact_192_add__0__iff,axiom,
    ! [B: nat,A: nat] :
      ( ( B
        = ( plus_plus_nat @ B @ A ) )
      = ( A = zero_zero_nat ) ) ).

% add_0_iff
thf(fact_193_add__0__iff,axiom,
    ! [B: int,A: int] :
      ( ( B
        = ( plus_plus_int @ B @ A ) )
      = ( A = zero_zero_int ) ) ).

% add_0_iff
thf(fact_194_add__0__iff,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( B
        = ( plus_p5714425477246183910nteger @ B @ A ) )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% add_0_iff
thf(fact_195_add__0__iff,axiom,
    ! [B: rat,A: rat] :
      ( ( B
        = ( plus_plus_rat @ B @ A ) )
      = ( A = zero_zero_rat ) ) ).

% add_0_iff
thf(fact_196_verit__sum__simplify,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% verit_sum_simplify
thf(fact_197_verit__sum__simplify,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ A @ zero_zero_int )
      = A ) ).

% verit_sum_simplify
thf(fact_198_verit__sum__simplify,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% verit_sum_simplify
thf(fact_199_verit__sum__simplify,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ A @ zero_zero_rat )
      = A ) ).

% verit_sum_simplify
thf(fact_200_verit__sum__simplify,axiom,
    ! [A: code_natural] :
      ( ( plus_p4538020629002901425atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% verit_sum_simplify
thf(fact_201_guard__def,axiom,
    ( heap_Time_guard_a
    = ( ^ [P3: heap_e7401611519738050253t_unit > $o,F2: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat] :
          ( heap_Time_Heap_a2
          @ ^ [H4: heap_e7401611519738050253t_unit] : ( if_opt6883606601682554499it_nat @ ( P3 @ H4 ) @ ( some_P7913643980934408916it_nat @ ( F2 @ H4 ) ) @ none_P2651198173097904984it_nat ) ) ) ) ).

% guard_def
thf(fact_202_guard__def,axiom,
    ( heap_T8440541562793052209t_unit
    = ( ^ [P3: heap_e7401611519738050253t_unit > $o,F2: heap_e7401611519738050253t_unit > produc8664842809031399944it_nat] :
          ( heap_T6183433275982383450t_unit
          @ ^ [H4: heap_e7401611519738050253t_unit] : ( if_opt1729522071442692626it_nat @ ( P3 @ H4 ) @ ( some_P1914260805536162275it_nat @ ( F2 @ H4 ) ) @ none_P9117596204409417319it_nat ) ) ) ) ).

% guard_def
thf(fact_203_raise__def,axiom,
    ( heap_Time_raise_a
    = ( ^ [S2: list_char] :
          ( heap_Time_Heap_a2
          @ ^ [Uu: heap_e7401611519738050253t_unit] : none_P2651198173097904984it_nat ) ) ) ).

% raise_def
thf(fact_204_raise__def,axiom,
    ( heap_T2927564422264180874t_unit
    = ( ^ [S2: list_char] :
          ( heap_T6183433275982383450t_unit
          @ ^ [Uu: heap_e7401611519738050253t_unit] : none_P9117596204409417319it_nat ) ) ) ).

% raise_def
thf(fact_205_successE,axiom,
    ! [F: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit] :
      ( ( heap_T584514906347983379t_unit @ F @ H )
     => ~ ! [R2: product_unit,H3: produc6653097349344004940it_nat] :
            ( ( heap_T875086893843062177t_unit @ F @ H )
           != ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R2 @ H3 ) ) ) ) ).

% successE
thf(fact_206_successE,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit] :
      ( ( heap_Time_success_a @ F @ H )
     => ~ ! [R2: a,H3: produc6653097349344004940it_nat] :
            ( ( heap_Time_execute_a @ F @ H )
           != ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ R2 @ H3 ) ) ) ) ).

% successE
thf(fact_207_Heap__cases,axiom,
    ! [F: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit] :
      ( ! [X5: product_unit,H3: produc6653097349344004940it_nat] :
          ( ( heap_T875086893843062177t_unit @ F @ H )
         != ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ X5 @ H3 ) ) )
     => ( ( heap_T875086893843062177t_unit @ F @ H )
        = none_P9117596204409417319it_nat ) ) ).

% Heap_cases
thf(fact_208_Heap__cases,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit] :
      ( ! [X5: a,H3: produc6653097349344004940it_nat] :
          ( ( heap_Time_execute_a @ F @ H )
         != ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ X5 @ H3 ) ) )
     => ( ( heap_Time_execute_a @ F @ H )
        = none_P2651198173097904984it_nat ) ) ).

% Heap_cases
thf(fact_209_execute__heap,axiom,
    ! [F: heap_e7401611519738050253t_unit > produc8664842809031399944it_nat] :
      ( ( heap_T875086893843062177t_unit @ ( heap_T6927113302350381334t_unit @ F ) )
      = ( comp_P3118722334806803912t_unit @ some_P1914260805536162275it_nat @ F ) ) ).

% execute_heap
thf(fact_210_execute__heap,axiom,
    ! [F: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat] :
      ( ( heap_Time_execute_a @ ( heap_Time_heap_a @ F ) )
      = ( comp_P8552900652980440422t_unit @ some_P7913643980934408916it_nat @ F ) ) ).

% execute_heap
thf(fact_211_Heap_Oinject,axiom,
    ! [X: heap_e7401611519738050253t_unit > option8956607266484857688it_nat,Ya: heap_e7401611519738050253t_unit > option8956607266484857688it_nat] :
      ( ( ( heap_T6183433275982383450t_unit @ X )
        = ( heap_T6183433275982383450t_unit @ Ya ) )
      = ( X = Ya ) ) ).

% Heap.inject
thf(fact_212_Heap__execute,axiom,
    ! [F: heap_Time_Heap_a] :
      ( ( heap_Time_Heap_a2 @ ( heap_Time_execute_a @ F ) )
      = F ) ).

% Heap_execute
thf(fact_213_Heap__execute,axiom,
    ! [F: heap_T5738788834812785303t_unit] :
      ( ( heap_T6183433275982383450t_unit @ ( heap_T875086893843062177t_unit @ F ) )
      = F ) ).

% Heap_execute
thf(fact_214_rewriteR__comp__comp2,axiom,
    ! [G: int > int,H: nat > int,R1: nat > int,R22: nat > nat,F: int > nat,L: nat > nat] :
      ( ( ( comp_int_int_nat @ G @ H )
        = ( comp_nat_int_nat @ R1 @ R22 ) )
     => ( ( ( comp_int_nat_nat @ F @ R1 )
          = L )
       => ( ( comp_int_nat_nat @ ( comp_int_nat_int @ F @ G ) @ H )
          = ( comp_nat_nat_nat @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_215_rewriteR__comp__comp2,axiom,
    ! [G: nat > int,H: nat > nat,R1: int > int,R22: nat > int,F: int > nat,L: int > nat] :
      ( ( ( comp_nat_int_nat @ G @ H )
        = ( comp_int_int_nat @ R1 @ R22 ) )
     => ( ( ( comp_int_nat_int @ F @ R1 )
          = L )
       => ( ( comp_nat_nat_nat @ ( comp_int_nat_nat @ F @ G ) @ H )
          = ( comp_int_nat_nat @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_216_rewriteR__comp__comp2,axiom,
    ! [G: int > int,H: int > int,R1: int > int,R22: int > int,F: int > nat,L: int > nat] :
      ( ( ( comp_int_int_int @ G @ H )
        = ( comp_int_int_int @ R1 @ R22 ) )
     => ( ( ( comp_int_nat_int @ F @ R1 )
          = L )
       => ( ( comp_int_nat_int @ ( comp_int_nat_int @ F @ G ) @ H )
          = ( comp_int_nat_int @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_217_rewriteR__comp__comp2,axiom,
    ! [G: code_integer > char,H: code_integer > code_integer,R1: char > char,R22: code_integer > char,F: char > char,L: char > char] :
      ( ( ( comp_C3856975138083468656nteger @ G @ H )
        = ( comp_c4562247934908617188nteger @ R1 @ R22 ) )
     => ( ( ( comp_char_char_char @ F @ R1 )
          = L )
       => ( ( comp_C3856975138083468656nteger @ ( comp_c4562247934908617188nteger @ F @ G ) @ H )
          = ( comp_c4562247934908617188nteger @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_218_rewriteR__comp__comp2,axiom,
    ! [G: int > num,H: int > int,R1: nat > num,R22: int > nat,F: num > nat,L: nat > nat] :
      ( ( ( comp_int_num_int @ G @ H )
        = ( comp_nat_num_int @ R1 @ R22 ) )
     => ( ( ( comp_num_nat_nat @ F @ R1 )
          = L )
       => ( ( comp_int_nat_int @ ( comp_num_nat_int @ F @ G ) @ H )
          = ( comp_nat_nat_int @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_219_rewriteR__comp__comp2,axiom,
    ! [G: int > nat,H: nat > int,R1: nat > nat,R22: nat > nat,F: nat > num,L: nat > num] :
      ( ( ( comp_int_nat_nat @ G @ H )
        = ( comp_nat_nat_nat @ R1 @ R22 ) )
     => ( ( ( comp_nat_num_nat @ F @ R1 )
          = L )
       => ( ( comp_int_num_nat @ ( comp_nat_num_int @ F @ G ) @ H )
          = ( comp_nat_num_nat @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_220_rewriteR__comp__comp2,axiom,
    ! [G: nat > nat,H: int > nat,R1: int > nat,R22: int > int,F: nat > nat,L: int > nat] :
      ( ( ( comp_nat_nat_int @ G @ H )
        = ( comp_int_nat_int @ R1 @ R22 ) )
     => ( ( ( comp_nat_nat_int @ F @ R1 )
          = L )
       => ( ( comp_nat_nat_int @ ( comp_nat_nat_nat @ F @ G ) @ H )
          = ( comp_int_nat_int @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_221_rewriteR__comp__comp2,axiom,
    ! [G: nat > nat,H: int > nat,R1: int > nat,R22: int > int,F: nat > num,L: int > num] :
      ( ( ( comp_nat_nat_int @ G @ H )
        = ( comp_int_nat_int @ R1 @ R22 ) )
     => ( ( ( comp_nat_num_int @ F @ R1 )
          = L )
       => ( ( comp_nat_num_int @ ( comp_nat_num_nat @ F @ G ) @ H )
          = ( comp_int_num_int @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_222_rewriteR__comp__comp2,axiom,
    ! [G: char > char,H: code_integer > char,R1: code_integer > char,R22: code_integer > code_integer,F: char > char,L: code_integer > char] :
      ( ( ( comp_c4562247934908617188nteger @ G @ H )
        = ( comp_C3856975138083468656nteger @ R1 @ R22 ) )
     => ( ( ( comp_c4562247934908617188nteger @ F @ R1 )
          = L )
       => ( ( comp_c4562247934908617188nteger @ ( comp_char_char_char @ F @ G ) @ H )
          = ( comp_C3856975138083468656nteger @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_223_rewriteR__comp__comp2,axiom,
    ! [G: char > char,H: code_integer > char,R1: char > char,R22: code_integer > char,F: char > char,L: char > char] :
      ( ( ( comp_c4562247934908617188nteger @ G @ H )
        = ( comp_c4562247934908617188nteger @ R1 @ R22 ) )
     => ( ( ( comp_char_char_char @ F @ R1 )
          = L )
       => ( ( comp_c4562247934908617188nteger @ ( comp_char_char_char @ F @ G ) @ H )
          = ( comp_c4562247934908617188nteger @ L @ R22 ) ) ) ) ).

% rewriteR_comp_comp2
thf(fact_224_rewriteL__comp__comp2,axiom,
    ! [F: num > num,G: nat > num,L1: nat > num,L2: nat > nat,H: int > nat,R: int > nat] :
      ( ( ( comp_num_num_nat @ F @ G )
        = ( comp_nat_num_nat @ L1 @ L2 ) )
     => ( ( ( comp_nat_nat_int @ L2 @ H )
          = R )
       => ( ( comp_num_num_int @ F @ ( comp_nat_num_int @ G @ H ) )
          = ( comp_nat_num_int @ L1 @ R ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_225_rewriteL__comp__comp2,axiom,
    ! [F: num > nat,G: nat > num,L1: int > nat,L2: nat > int,H: int > nat,R: int > int] :
      ( ( ( comp_num_nat_nat @ F @ G )
        = ( comp_int_nat_nat @ L1 @ L2 ) )
     => ( ( ( comp_nat_int_int @ L2 @ H )
          = R )
       => ( ( comp_num_nat_int @ F @ ( comp_nat_num_int @ G @ H ) )
          = ( comp_int_nat_int @ L1 @ R ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_226_rewriteL__comp__comp2,axiom,
    ! [F: char > char,G: char > char,L1: char > char,L2: char > char,H: code_integer > char,R: code_integer > char] :
      ( ( ( comp_char_char_char @ F @ G )
        = ( comp_char_char_char @ L1 @ L2 ) )
     => ( ( ( comp_c4562247934908617188nteger @ L2 @ H )
          = R )
       => ( ( comp_c4562247934908617188nteger @ F @ ( comp_c4562247934908617188nteger @ G @ H ) )
          = ( comp_c4562247934908617188nteger @ L1 @ R ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_227_rewriteL__comp__comp2,axiom,
    ! [F: nat > num,G: nat > nat,L1: num > num,L2: nat > num,H: int > nat,R: int > num] :
      ( ( ( comp_nat_num_nat @ F @ G )
        = ( comp_num_num_nat @ L1 @ L2 ) )
     => ( ( ( comp_nat_num_int @ L2 @ H )
          = R )
       => ( ( comp_nat_num_int @ F @ ( comp_nat_nat_int @ G @ H ) )
          = ( comp_num_num_int @ L1 @ R ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_228_rewriteL__comp__comp2,axiom,
    ! [F: int > nat,G: nat > int,L1: num > nat,L2: nat > num,H: int > nat,R: int > num] :
      ( ( ( comp_int_nat_nat @ F @ G )
        = ( comp_num_nat_nat @ L1 @ L2 ) )
     => ( ( ( comp_nat_num_int @ L2 @ H )
          = R )
       => ( ( comp_int_nat_int @ F @ ( comp_nat_int_int @ G @ H ) )
          = ( comp_num_nat_int @ L1 @ R ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_229_rewriteL__comp__comp2,axiom,
    ! [F: num > nat,G: nat > num,L1: nat > nat,L2: nat > nat,H: int > nat,R: int > nat] :
      ( ( ( comp_num_nat_nat @ F @ G )
        = ( comp_nat_nat_nat @ L1 @ L2 ) )
     => ( ( ( comp_nat_nat_int @ L2 @ H )
          = R )
       => ( ( comp_num_nat_int @ F @ ( comp_nat_num_int @ G @ H ) )
          = ( comp_nat_nat_int @ L1 @ R ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_230_rewriteL__comp__comp2,axiom,
    ! [F: int > nat,G: nat > int,L1: nat > nat,L2: nat > nat,H: int > nat,R: int > nat] :
      ( ( ( comp_int_nat_nat @ F @ G )
        = ( comp_nat_nat_nat @ L1 @ L2 ) )
     => ( ( ( comp_nat_nat_int @ L2 @ H )
          = R )
       => ( ( comp_int_nat_int @ F @ ( comp_nat_int_int @ G @ H ) )
          = ( comp_nat_nat_int @ L1 @ R ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_231_rewriteL__comp__comp2,axiom,
    ! [F: nat > nat,G: int > nat,L1: int > nat,L2: int > int,H: int > int,R: int > int] :
      ( ( ( comp_nat_nat_int @ F @ G )
        = ( comp_int_nat_int @ L1 @ L2 ) )
     => ( ( ( comp_int_int_int @ L2 @ H )
          = R )
       => ( ( comp_nat_nat_int @ F @ ( comp_int_nat_int @ G @ H ) )
          = ( comp_int_nat_int @ L1 @ R ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_232_rewriteL__comp__comp2,axiom,
    ! [F: nat > nat,G: int > nat,L1: int > nat,L2: int > int,H: nat > int,R: nat > int] :
      ( ( ( comp_nat_nat_int @ F @ G )
        = ( comp_int_nat_int @ L1 @ L2 ) )
     => ( ( ( comp_int_int_nat @ L2 @ H )
          = R )
       => ( ( comp_nat_nat_nat @ F @ ( comp_int_nat_nat @ G @ H ) )
          = ( comp_int_nat_nat @ L1 @ R ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_233_rewriteL__comp__comp2,axiom,
    ! [F: char > char,G: code_integer > char,L1: char > char,L2: code_integer > char,H: code_integer > code_integer,R: code_integer > char] :
      ( ( ( comp_c4562247934908617188nteger @ F @ G )
        = ( comp_c4562247934908617188nteger @ L1 @ L2 ) )
     => ( ( ( comp_C3856975138083468656nteger @ L2 @ H )
          = R )
       => ( ( comp_c4562247934908617188nteger @ F @ ( comp_C3856975138083468656nteger @ G @ H ) )
          = ( comp_c4562247934908617188nteger @ L1 @ R ) ) ) ) ).

% rewriteL_comp_comp2
thf(fact_234_rewriteR__comp__comp,axiom,
    ! [G: code_integer > char,H: code_integer > code_integer,R: code_integer > char,F: char > char] :
      ( ( ( comp_C3856975138083468656nteger @ G @ H )
        = R )
     => ( ( comp_C3856975138083468656nteger @ ( comp_c4562247934908617188nteger @ F @ G ) @ H )
        = ( comp_c4562247934908617188nteger @ F @ R ) ) ) ).

% rewriteR_comp_comp
thf(fact_235_rewriteR__comp__comp,axiom,
    ! [G: nat > nat,H: int > nat,R: int > nat,F: nat > num] :
      ( ( ( comp_nat_nat_int @ G @ H )
        = R )
     => ( ( comp_nat_num_int @ ( comp_nat_num_nat @ F @ G ) @ H )
        = ( comp_nat_num_int @ F @ R ) ) ) ).

% rewriteR_comp_comp
thf(fact_236_rewriteR__comp__comp,axiom,
    ! [G: int > int,H: int > int,R: int > int,F: int > nat] :
      ( ( ( comp_int_int_int @ G @ H )
        = R )
     => ( ( comp_int_nat_int @ ( comp_int_nat_int @ F @ G ) @ H )
        = ( comp_int_nat_int @ F @ R ) ) ) ).

% rewriteR_comp_comp
thf(fact_237_rewriteR__comp__comp,axiom,
    ! [G: char > char,H: code_integer > char,R: code_integer > char,F: char > char] :
      ( ( ( comp_c4562247934908617188nteger @ G @ H )
        = R )
     => ( ( comp_c4562247934908617188nteger @ ( comp_char_char_char @ F @ G ) @ H )
        = ( comp_c4562247934908617188nteger @ F @ R ) ) ) ).

% rewriteR_comp_comp
thf(fact_238_rewriteR__comp__comp,axiom,
    ! [G: nat > num,H: int > nat,R: int > num,F: num > num] :
      ( ( ( comp_nat_num_int @ G @ H )
        = R )
     => ( ( comp_nat_num_int @ ( comp_num_num_nat @ F @ G ) @ H )
        = ( comp_num_num_int @ F @ R ) ) ) ).

% rewriteR_comp_comp
thf(fact_239_rewriteR__comp__comp,axiom,
    ! [G: nat > nat,H: nat > nat,R: nat > nat,F: nat > nat] :
      ( ( ( comp_nat_nat_nat @ G @ H )
        = R )
     => ( ( comp_nat_nat_nat @ ( comp_nat_nat_nat @ F @ G ) @ H )
        = ( comp_nat_nat_nat @ F @ R ) ) ) ).

% rewriteR_comp_comp
thf(fact_240_rewriteR__comp__comp,axiom,
    ! [G: int > nat,H: int > int,R: int > nat,F: nat > num] :
      ( ( ( comp_int_nat_int @ G @ H )
        = R )
     => ( ( comp_int_num_int @ ( comp_nat_num_int @ F @ G ) @ H )
        = ( comp_nat_num_int @ F @ R ) ) ) ).

% rewriteR_comp_comp
thf(fact_241_rewriteR__comp__comp,axiom,
    ! [G: int > nat,H: int > int,R: int > nat,F: nat > nat] :
      ( ( ( comp_int_nat_int @ G @ H )
        = R )
     => ( ( comp_int_nat_int @ ( comp_nat_nat_int @ F @ G ) @ H )
        = ( comp_nat_nat_int @ F @ R ) ) ) ).

% rewriteR_comp_comp
thf(fact_242_rewriteR__comp__comp,axiom,
    ! [G: code_integer > code_integer > code_integer,H: code_integer > code_integer,R: code_integer > code_integer > code_integer,F: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger] :
      ( ( ( comp_C2931745410781319416nteger @ G @ H )
        = R )
     => ( ( comp_C1593894019821074884nteger @ ( comp_C8797469213163452608nteger @ F @ G ) @ H )
        = ( comp_C8797469213163452608nteger @ F @ R ) ) ) ).

% rewriteR_comp_comp
thf(fact_243_rewriteR__comp__comp,axiom,
    ! [G: ( code_integer > code_integer ) > code_integer > code_integer,H: code_integer > code_integer > code_integer,R: code_integer > code_integer > code_integer,F: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger] :
      ( ( ( comp_C2822359487432382964nteger @ G @ H )
        = R )
     => ( ( comp_C8797469213163452608nteger @ ( comp_C3983183376822107068nteger @ F @ G ) @ H )
        = ( comp_C8797469213163452608nteger @ F @ R ) ) ) ).

% rewriteR_comp_comp
thf(fact_244_rewriteL__comp__comp,axiom,
    ! [F: num > num,G: nat > num,L: nat > num,H: int > nat] :
      ( ( ( comp_num_num_nat @ F @ G )
        = L )
     => ( ( comp_num_num_int @ F @ ( comp_nat_num_int @ G @ H ) )
        = ( comp_nat_num_int @ L @ H ) ) ) ).

% rewriteL_comp_comp
thf(fact_245_rewriteL__comp__comp,axiom,
    ! [F: nat > nat,G: int > nat,L: int > nat,H: int > int] :
      ( ( ( comp_nat_nat_int @ F @ G )
        = L )
     => ( ( comp_nat_nat_int @ F @ ( comp_int_nat_int @ G @ H ) )
        = ( comp_int_nat_int @ L @ H ) ) ) ).

% rewriteL_comp_comp
thf(fact_246_rewriteL__comp__comp,axiom,
    ! [F: char > char,G: char > char,L: char > char,H: code_integer > char] :
      ( ( ( comp_char_char_char @ F @ G )
        = L )
     => ( ( comp_c4562247934908617188nteger @ F @ ( comp_c4562247934908617188nteger @ G @ H ) )
        = ( comp_c4562247934908617188nteger @ L @ H ) ) ) ).

% rewriteL_comp_comp
thf(fact_247_rewriteL__comp__comp,axiom,
    ! [F: nat > num,G: nat > nat,L: nat > num,H: int > nat] :
      ( ( ( comp_nat_num_nat @ F @ G )
        = L )
     => ( ( comp_nat_num_int @ F @ ( comp_nat_nat_int @ G @ H ) )
        = ( comp_nat_num_int @ L @ H ) ) ) ).

% rewriteL_comp_comp
thf(fact_248_rewriteL__comp__comp,axiom,
    ! [F: char > char,G: code_integer > char,L: code_integer > char,H: code_integer > code_integer] :
      ( ( ( comp_c4562247934908617188nteger @ F @ G )
        = L )
     => ( ( comp_c4562247934908617188nteger @ F @ ( comp_C3856975138083468656nteger @ G @ H ) )
        = ( comp_C3856975138083468656nteger @ L @ H ) ) ) ).

% rewriteL_comp_comp
thf(fact_249_rewriteL__comp__comp,axiom,
    ! [F: nat > num,G: int > nat,L: int > num,H: int > int] :
      ( ( ( comp_nat_num_int @ F @ G )
        = L )
     => ( ( comp_nat_num_int @ F @ ( comp_int_nat_int @ G @ H ) )
        = ( comp_int_num_int @ L @ H ) ) ) ).

% rewriteL_comp_comp
thf(fact_250_rewriteL__comp__comp,axiom,
    ! [F: nat > nat,G: nat > nat,L: nat > nat,H: nat > nat] :
      ( ( ( comp_nat_nat_nat @ F @ G )
        = L )
     => ( ( comp_nat_nat_nat @ F @ ( comp_nat_nat_nat @ G @ H ) )
        = ( comp_nat_nat_nat @ L @ H ) ) ) ).

% rewriteL_comp_comp
thf(fact_251_rewriteL__comp__comp,axiom,
    ! [F: int > nat,G: int > int,L: int > nat,H: int > int] :
      ( ( ( comp_int_nat_int @ F @ G )
        = L )
     => ( ( comp_int_nat_int @ F @ ( comp_int_int_int @ G @ H ) )
        = ( comp_int_nat_int @ L @ H ) ) ) ).

% rewriteL_comp_comp
thf(fact_252_rewriteL__comp__comp,axiom,
    ! [F: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,G: code_integer > code_integer > code_integer,L: code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger,H: code_integer > code_integer] :
      ( ( ( comp_C8797469213163452608nteger @ F @ G )
        = L )
     => ( ( comp_C8797469213163452608nteger @ F @ ( comp_C2931745410781319416nteger @ G @ H ) )
        = ( comp_C1593894019821074884nteger @ L @ H ) ) ) ).

% rewriteL_comp_comp
thf(fact_253_rewriteL__comp__comp,axiom,
    ! [F: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,G: ( code_integer > code_integer ) > code_integer > code_integer,L: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,H: code_integer > code_integer > code_integer] :
      ( ( ( comp_C3983183376822107068nteger @ F @ G )
        = L )
     => ( ( comp_C8797469213163452608nteger @ F @ ( comp_C2822359487432382964nteger @ G @ H ) )
        = ( comp_C8797469213163452608nteger @ L @ H ) ) ) ).

% rewriteL_comp_comp
thf(fact_254_Heap_Oexhaust,axiom,
    ! [Y3: heap_T5738788834812785303t_unit] :
      ~ ! [X5: heap_e7401611519738050253t_unit > option8956607266484857688it_nat] :
          ( Y3
         != ( heap_T6183433275982383450t_unit @ X5 ) ) ).

% Heap.exhaust
thf(fact_255_heap__def,axiom,
    ( heap_Time_heap_a
    = ( ^ [F2: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat] : ( heap_Time_Heap_a2 @ ( comp_P8552900652980440422t_unit @ some_P7913643980934408916it_nat @ F2 ) ) ) ) ).

% heap_def
thf(fact_256_heap__def,axiom,
    ( heap_T6927113302350381334t_unit
    = ( ^ [F2: heap_e7401611519738050253t_unit > produc8664842809031399944it_nat] : ( heap_T6183433275982383450t_unit @ ( comp_P3118722334806803912t_unit @ some_P1914260805536162275it_nat @ F2 ) ) ) ) ).

% heap_def
thf(fact_257_execute_Osimps,axiom,
    ! [F: heap_e7401611519738050253t_unit > option3562590408128118217it_nat] :
      ( ( heap_Time_execute_a @ ( heap_Time_Heap_a2 @ F ) )
      = F ) ).

% execute.simps
thf(fact_258_execute_Osimps,axiom,
    ! [F: heap_e7401611519738050253t_unit > option8956607266484857688it_nat] :
      ( ( heap_T875086893843062177t_unit @ ( heap_T6183433275982383450t_unit @ F ) )
      = F ) ).

% execute.simps
thf(fact_259_comp__apply,axiom,
    ( comp_c4562247934908617188nteger
    = ( ^ [F2: char > char,G2: code_integer > char,X4: code_integer] : ( F2 @ ( G2 @ X4 ) ) ) ) ).

% comp_apply
thf(fact_260_comp__apply,axiom,
    ( comp_nat_num_int
    = ( ^ [F2: nat > num,G2: int > nat,X4: int] : ( F2 @ ( G2 @ X4 ) ) ) ) ).

% comp_apply
thf(fact_261_comp__apply,axiom,
    ( comp_nat_nat_nat
    = ( ^ [F2: nat > nat,G2: nat > nat,X4: nat] : ( F2 @ ( G2 @ X4 ) ) ) ) ).

% comp_apply
thf(fact_262_comp__apply,axiom,
    ( comp_int_nat_int
    = ( ^ [F2: int > nat,G2: int > int,X4: int] : ( F2 @ ( G2 @ X4 ) ) ) ) ).

% comp_apply
thf(fact_263_comp__apply,axiom,
    ( comp_C8797469213163452608nteger
    = ( ^ [F2: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,G2: code_integer > code_integer > code_integer,X4: code_integer] : ( F2 @ ( G2 @ X4 ) ) ) ) ).

% comp_apply
thf(fact_264_old_Oprod_Oinject,axiom,
    ! [A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger,A5: code_integer > option6357759511663192854e_term,B5: produc8923325533196201883nteger] :
      ( ( ( produc6137756002093451184nteger @ A @ B )
        = ( produc6137756002093451184nteger @ A5 @ B5 ) )
      = ( ( A = A5 )
        & ( B = B5 ) ) ) ).

% old.prod.inject
thf(fact_265_old_Oprod_Oinject,axiom,
    ! [A: produc4972180933644002618e_term > option6357759511663192854e_term,B: produc7822875418678951345atural,A5: produc4972180933644002618e_term > option6357759511663192854e_term,B5: produc7822875418678951345atural] :
      ( ( ( produc3831813291587773865atural @ A @ B )
        = ( produc3831813291587773865atural @ A5 @ B5 ) )
      = ( ( A = A5 )
        & ( B = B5 ) ) ) ).

% old.prod.inject
thf(fact_266_old_Oprod_Oinject,axiom,
    ! [A: produc6241069584506657477e_term > option6357759511663192854e_term,B: produc8923325533196201883nteger,A5: produc6241069584506657477e_term > option6357759511663192854e_term,B5: produc8923325533196201883nteger] :
      ( ( ( produc8603105652947943368nteger @ A @ B )
        = ( produc8603105652947943368nteger @ A5 @ B5 ) )
      = ( ( A = A5 )
        & ( B = B5 ) ) ) ).

% old.prod.inject
thf(fact_267_old_Oprod_Oinject,axiom,
    ! [A: produc8551481072490612790e_term > option6357759511663192854e_term,B: product_prod_int_int,A5: produc8551481072490612790e_term > option6357759511663192854e_term,B5: product_prod_int_int] :
      ( ( ( produc5700946648718959541nt_int @ A @ B )
        = ( produc5700946648718959541nt_int @ A5 @ B5 ) )
      = ( ( A = A5 )
        & ( B = B5 ) ) ) ).

% old.prod.inject
thf(fact_268_old_Oprod_Oinject,axiom,
    ! [A: int > option6357759511663192854e_term,B: product_prod_int_int,A5: int > option6357759511663192854e_term,B5: product_prod_int_int] :
      ( ( ( produc4305682042979456191nt_int @ A @ B )
        = ( produc4305682042979456191nt_int @ A5 @ B5 ) )
      = ( ( A = A5 )
        & ( B = B5 ) ) ) ).

% old.prod.inject
thf(fact_269_prod_Oinject,axiom,
    ! [X1: code_integer > option6357759511663192854e_term,X2: produc8923325533196201883nteger,Y1: code_integer > option6357759511663192854e_term,Y2: produc8923325533196201883nteger] :
      ( ( ( produc6137756002093451184nteger @ X1 @ X2 )
        = ( produc6137756002093451184nteger @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_270_prod_Oinject,axiom,
    ! [X1: produc4972180933644002618e_term > option6357759511663192854e_term,X2: produc7822875418678951345atural,Y1: produc4972180933644002618e_term > option6357759511663192854e_term,Y2: produc7822875418678951345atural] :
      ( ( ( produc3831813291587773865atural @ X1 @ X2 )
        = ( produc3831813291587773865atural @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_271_prod_Oinject,axiom,
    ! [X1: produc6241069584506657477e_term > option6357759511663192854e_term,X2: produc8923325533196201883nteger,Y1: produc6241069584506657477e_term > option6357759511663192854e_term,Y2: produc8923325533196201883nteger] :
      ( ( ( produc8603105652947943368nteger @ X1 @ X2 )
        = ( produc8603105652947943368nteger @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_272_prod_Oinject,axiom,
    ! [X1: produc8551481072490612790e_term > option6357759511663192854e_term,X2: product_prod_int_int,Y1: produc8551481072490612790e_term > option6357759511663192854e_term,Y2: product_prod_int_int] :
      ( ( ( produc5700946648718959541nt_int @ X1 @ X2 )
        = ( produc5700946648718959541nt_int @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_273_prod_Oinject,axiom,
    ! [X1: int > option6357759511663192854e_term,X2: product_prod_int_int,Y1: int > option6357759511663192854e_term,Y2: product_prod_int_int] :
      ( ( ( produc4305682042979456191nt_int @ X1 @ X2 )
        = ( produc4305682042979456191nt_int @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_274_execute__return,axiom,
    ! [X: product_unit] :
      ( ( heap_T875086893843062177t_unit @ ( heap_T7507251653302230130t_unit @ X ) )
      = ( comp_P3118722334806803912t_unit @ some_P1914260805536162275it_nat
        @ ^ [H4: heap_e7401611519738050253t_unit] : ( produc7133225469290080770it_nat @ X @ ( produc584006145561248582it_nat @ H4 @ one_one_nat ) ) ) ) ).

% execute_return
thf(fact_275_execute__return,axiom,
    ! [X: a] :
      ( ( heap_Time_execute_a @ ( heap_Time_return_a @ X ) )
      = ( comp_P8552900652980440422t_unit @ some_P7913643980934408916it_nat
        @ ^ [H4: heap_e7401611519738050253t_unit] : ( produc9178034014595674355it_nat @ X @ ( produc584006145561248582it_nat @ H4 @ one_one_nat ) ) ) ) ).

% execute_return
thf(fact_276_execute__ureturn,axiom,
    ! [X: product_unit] :
      ( ( heap_T875086893843062177t_unit @ ( heap_T4284346855313245393t_unit @ X ) )
      = ( comp_P3118722334806803912t_unit @ some_P1914260805536162275it_nat
        @ ^ [H4: heap_e7401611519738050253t_unit] : ( produc7133225469290080770it_nat @ X @ ( produc584006145561248582it_nat @ H4 @ zero_zero_nat ) ) ) ) ).

% execute_ureturn
thf(fact_277_execute__ureturn,axiom,
    ! [X: a] :
      ( ( heap_Time_execute_a @ ( heap_Time_ureturn_a @ X ) )
      = ( comp_P8552900652980440422t_unit @ some_P7913643980934408916it_nat
        @ ^ [H4: heap_e7401611519738050253t_unit] : ( produc9178034014595674355it_nat @ X @ ( produc584006145561248582it_nat @ H4 @ zero_zero_nat ) ) ) ) ).

% execute_ureturn
thf(fact_278_prod__induct3,axiom,
    ! [P: produc8763457246119570046nteger > $o,X: produc8763457246119570046nteger] :
      ( ! [A2: code_integer > option6357759511663192854e_term,B2: code_integer,C2: code_integer] : ( P @ ( produc6137756002093451184nteger @ A2 @ ( produc1086072967326762835nteger @ B2 @ C2 ) ) )
     => ( P @ X ) ) ).

% prod_induct3
thf(fact_279_prod__induct3,axiom,
    ! [P: produc989692990947075319atural > $o,X: produc989692990947075319atural] :
      ( ! [A2: produc4972180933644002618e_term > option6357759511663192854e_term,B2: code_natural,C2: code_natural] : ( P @ ( produc3831813291587773865atural @ A2 @ ( produc3574140220909816553atural @ B2 @ C2 ) ) )
     => ( P @ X ) ) ).

% prod_induct3
thf(fact_280_prod__induct3,axiom,
    ! [P: produc1908205239877642774nteger > $o,X: produc1908205239877642774nteger] :
      ( ! [A2: produc6241069584506657477e_term > option6357759511663192854e_term,B2: code_integer,C2: code_integer] : ( P @ ( produc8603105652947943368nteger @ A2 @ ( produc1086072967326762835nteger @ B2 @ C2 ) ) )
     => ( P @ X ) ) ).

% prod_induct3
thf(fact_281_prod__induct3,axiom,
    ! [P: produc2285326912895808259nt_int > $o,X: produc2285326912895808259nt_int] :
      ( ! [A2: produc8551481072490612790e_term > option6357759511663192854e_term,B2: int,C2: int] : ( P @ ( produc5700946648718959541nt_int @ A2 @ ( product_Pair_int_int @ B2 @ C2 ) ) )
     => ( P @ X ) ) ).

% prod_induct3
thf(fact_282_prod__induct3,axiom,
    ! [P: produc7773217078559923341nt_int > $o,X: produc7773217078559923341nt_int] :
      ( ! [A2: int > option6357759511663192854e_term,B2: int,C2: int] : ( P @ ( produc4305682042979456191nt_int @ A2 @ ( product_Pair_int_int @ B2 @ C2 ) ) )
     => ( P @ X ) ) ).

% prod_induct3
thf(fact_283_timeFrame_Ocases,axiom,
    ! [X: produc4453839368661128058it_nat] :
      ( ! [N2: nat,R2: a,H6: heap_e7401611519738050253t_unit,N4: nat] :
          ( X
         != ( produc4111269673004989362it_nat @ N2 @ ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ N4 ) ) ) ) )
     => ~ ! [N2: nat] :
            ( X
           != ( produc4111269673004989362it_nat @ N2 @ none_P2651198173097904984it_nat ) ) ) ).

% timeFrame.cases
thf(fact_284_timeFrame_Ocases,axiom,
    ! [X: produc3911288613690379145it_nat] :
      ( ! [N2: nat,R2: product_unit,H6: heap_e7401611519738050253t_unit,N4: nat] :
          ( X
         != ( produc638857205735767105it_nat @ N2 @ ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ N4 ) ) ) ) )
     => ~ ! [N2: nat] :
            ( X
           != ( produc638857205735767105it_nat @ N2 @ none_P9117596204409417319it_nat ) ) ) ).

% timeFrame.cases
thf(fact_285_old_Oprod_Oexhaust,axiom,
    ! [Y3: produc8763457246119570046nteger] :
      ~ ! [A2: code_integer > option6357759511663192854e_term,B2: produc8923325533196201883nteger] :
          ( Y3
         != ( produc6137756002093451184nteger @ A2 @ B2 ) ) ).

% old.prod.exhaust
thf(fact_286_old_Oprod_Oexhaust,axiom,
    ! [Y3: produc989692990947075319atural] :
      ~ ! [A2: produc4972180933644002618e_term > option6357759511663192854e_term,B2: produc7822875418678951345atural] :
          ( Y3
         != ( produc3831813291587773865atural @ A2 @ B2 ) ) ).

% old.prod.exhaust
thf(fact_287_old_Oprod_Oexhaust,axiom,
    ! [Y3: produc1908205239877642774nteger] :
      ~ ! [A2: produc6241069584506657477e_term > option6357759511663192854e_term,B2: produc8923325533196201883nteger] :
          ( Y3
         != ( produc8603105652947943368nteger @ A2 @ B2 ) ) ).

% old.prod.exhaust
thf(fact_288_old_Oprod_Oexhaust,axiom,
    ! [Y3: produc2285326912895808259nt_int] :
      ~ ! [A2: produc8551481072490612790e_term > option6357759511663192854e_term,B2: product_prod_int_int] :
          ( Y3
         != ( produc5700946648718959541nt_int @ A2 @ B2 ) ) ).

% old.prod.exhaust
thf(fact_289_old_Oprod_Oexhaust,axiom,
    ! [Y3: produc7773217078559923341nt_int] :
      ~ ! [A2: int > option6357759511663192854e_term,B2: product_prod_int_int] :
          ( Y3
         != ( produc4305682042979456191nt_int @ A2 @ B2 ) ) ).

% old.prod.exhaust
thf(fact_290_surj__pair,axiom,
    ! [P4: produc8763457246119570046nteger] :
    ? [X5: code_integer > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
      ( P4
      = ( produc6137756002093451184nteger @ X5 @ Y4 ) ) ).

% surj_pair
thf(fact_291_surj__pair,axiom,
    ! [P4: produc989692990947075319atural] :
    ? [X5: produc4972180933644002618e_term > option6357759511663192854e_term,Y4: produc7822875418678951345atural] :
      ( P4
      = ( produc3831813291587773865atural @ X5 @ Y4 ) ) ).

% surj_pair
thf(fact_292_surj__pair,axiom,
    ! [P4: produc1908205239877642774nteger] :
    ? [X5: produc6241069584506657477e_term > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
      ( P4
      = ( produc8603105652947943368nteger @ X5 @ Y4 ) ) ).

% surj_pair
thf(fact_293_surj__pair,axiom,
    ! [P4: produc2285326912895808259nt_int] :
    ? [X5: produc8551481072490612790e_term > option6357759511663192854e_term,Y4: product_prod_int_int] :
      ( P4
      = ( produc5700946648718959541nt_int @ X5 @ Y4 ) ) ).

% surj_pair
thf(fact_294_surj__pair,axiom,
    ! [P4: produc7773217078559923341nt_int] :
    ? [X5: int > option6357759511663192854e_term,Y4: product_prod_int_int] :
      ( P4
      = ( produc4305682042979456191nt_int @ X5 @ Y4 ) ) ).

% surj_pair
thf(fact_295_prod__cases,axiom,
    ! [P: produc8763457246119570046nteger > $o,P4: produc8763457246119570046nteger] :
      ( ! [A2: code_integer > option6357759511663192854e_term,B2: produc8923325533196201883nteger] : ( P @ ( produc6137756002093451184nteger @ A2 @ B2 ) )
     => ( P @ P4 ) ) ).

% prod_cases
thf(fact_296_prod__cases,axiom,
    ! [P: produc989692990947075319atural > $o,P4: produc989692990947075319atural] :
      ( ! [A2: produc4972180933644002618e_term > option6357759511663192854e_term,B2: produc7822875418678951345atural] : ( P @ ( produc3831813291587773865atural @ A2 @ B2 ) )
     => ( P @ P4 ) ) ).

% prod_cases
thf(fact_297_prod__cases,axiom,
    ! [P: produc1908205239877642774nteger > $o,P4: produc1908205239877642774nteger] :
      ( ! [A2: produc6241069584506657477e_term > option6357759511663192854e_term,B2: produc8923325533196201883nteger] : ( P @ ( produc8603105652947943368nteger @ A2 @ B2 ) )
     => ( P @ P4 ) ) ).

% prod_cases
thf(fact_298_prod__cases,axiom,
    ! [P: produc2285326912895808259nt_int > $o,P4: produc2285326912895808259nt_int] :
      ( ! [A2: produc8551481072490612790e_term > option6357759511663192854e_term,B2: product_prod_int_int] : ( P @ ( produc5700946648718959541nt_int @ A2 @ B2 ) )
     => ( P @ P4 ) ) ).

% prod_cases
thf(fact_299_prod__cases,axiom,
    ! [P: produc7773217078559923341nt_int > $o,P4: produc7773217078559923341nt_int] :
      ( ! [A2: int > option6357759511663192854e_term,B2: product_prod_int_int] : ( P @ ( produc4305682042979456191nt_int @ A2 @ B2 ) )
     => ( P @ P4 ) ) ).

% prod_cases
thf(fact_300_Pair__inject,axiom,
    ! [A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger,A5: code_integer > option6357759511663192854e_term,B5: produc8923325533196201883nteger] :
      ( ( ( produc6137756002093451184nteger @ A @ B )
        = ( produc6137756002093451184nteger @ A5 @ B5 ) )
     => ~ ( ( A = A5 )
         => ( B != B5 ) ) ) ).

% Pair_inject
thf(fact_301_Pair__inject,axiom,
    ! [A: produc4972180933644002618e_term > option6357759511663192854e_term,B: produc7822875418678951345atural,A5: produc4972180933644002618e_term > option6357759511663192854e_term,B5: produc7822875418678951345atural] :
      ( ( ( produc3831813291587773865atural @ A @ B )
        = ( produc3831813291587773865atural @ A5 @ B5 ) )
     => ~ ( ( A = A5 )
         => ( B != B5 ) ) ) ).

% Pair_inject
thf(fact_302_Pair__inject,axiom,
    ! [A: produc6241069584506657477e_term > option6357759511663192854e_term,B: produc8923325533196201883nteger,A5: produc6241069584506657477e_term > option6357759511663192854e_term,B5: produc8923325533196201883nteger] :
      ( ( ( produc8603105652947943368nteger @ A @ B )
        = ( produc8603105652947943368nteger @ A5 @ B5 ) )
     => ~ ( ( A = A5 )
         => ( B != B5 ) ) ) ).

% Pair_inject
thf(fact_303_Pair__inject,axiom,
    ! [A: produc8551481072490612790e_term > option6357759511663192854e_term,B: product_prod_int_int,A5: produc8551481072490612790e_term > option6357759511663192854e_term,B5: product_prod_int_int] :
      ( ( ( produc5700946648718959541nt_int @ A @ B )
        = ( produc5700946648718959541nt_int @ A5 @ B5 ) )
     => ~ ( ( A = A5 )
         => ( B != B5 ) ) ) ).

% Pair_inject
thf(fact_304_Pair__inject,axiom,
    ! [A: int > option6357759511663192854e_term,B: product_prod_int_int,A5: int > option6357759511663192854e_term,B5: product_prod_int_int] :
      ( ( ( produc4305682042979456191nt_int @ A @ B )
        = ( produc4305682042979456191nt_int @ A5 @ B5 ) )
     => ~ ( ( A = A5 )
         => ( B != B5 ) ) ) ).

% Pair_inject
thf(fact_305_comp__def,axiom,
    ( comp_c4562247934908617188nteger
    = ( ^ [F2: char > char,G2: code_integer > char,X4: code_integer] : ( F2 @ ( G2 @ X4 ) ) ) ) ).

% comp_def
thf(fact_306_comp__def,axiom,
    ( comp_nat_num_int
    = ( ^ [F2: nat > num,G2: int > nat,X4: int] : ( F2 @ ( G2 @ X4 ) ) ) ) ).

% comp_def
thf(fact_307_comp__def,axiom,
    ( comp_nat_nat_nat
    = ( ^ [F2: nat > nat,G2: nat > nat,X4: nat] : ( F2 @ ( G2 @ X4 ) ) ) ) ).

% comp_def
thf(fact_308_comp__def,axiom,
    ( comp_int_nat_int
    = ( ^ [F2: int > nat,G2: int > int,X4: int] : ( F2 @ ( G2 @ X4 ) ) ) ) ).

% comp_def
thf(fact_309_comp__def,axiom,
    ( comp_C8797469213163452608nteger
    = ( ^ [F2: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,G2: code_integer > code_integer > code_integer,X4: code_integer] : ( F2 @ ( G2 @ X4 ) ) ) ) ).

% comp_def
thf(fact_310_comp__assoc,axiom,
    ! [F: char > char,G: code_integer > char,H: code_integer > code_integer] :
      ( ( comp_C3856975138083468656nteger @ ( comp_c4562247934908617188nteger @ F @ G ) @ H )
      = ( comp_c4562247934908617188nteger @ F @ ( comp_C3856975138083468656nteger @ G @ H ) ) ) ).

% comp_assoc
thf(fact_311_comp__assoc,axiom,
    ! [F: nat > num,G: int > nat,H: int > int] :
      ( ( comp_int_num_int @ ( comp_nat_num_int @ F @ G ) @ H )
      = ( comp_nat_num_int @ F @ ( comp_int_nat_int @ G @ H ) ) ) ).

% comp_assoc
thf(fact_312_comp__assoc,axiom,
    ! [F: char > char,G: char > char,H: code_integer > char] :
      ( ( comp_c4562247934908617188nteger @ ( comp_char_char_char @ F @ G ) @ H )
      = ( comp_c4562247934908617188nteger @ F @ ( comp_c4562247934908617188nteger @ G @ H ) ) ) ).

% comp_assoc
thf(fact_313_comp__assoc,axiom,
    ! [F: num > num,G: nat > num,H: int > nat] :
      ( ( comp_nat_num_int @ ( comp_num_num_nat @ F @ G ) @ H )
      = ( comp_num_num_int @ F @ ( comp_nat_num_int @ G @ H ) ) ) ).

% comp_assoc
thf(fact_314_comp__assoc,axiom,
    ! [F: nat > num,G: nat > nat,H: int > nat] :
      ( ( comp_nat_num_int @ ( comp_nat_num_nat @ F @ G ) @ H )
      = ( comp_nat_num_int @ F @ ( comp_nat_nat_int @ G @ H ) ) ) ).

% comp_assoc
thf(fact_315_comp__assoc,axiom,
    ! [F: nat > nat,G: nat > nat,H: nat > nat] :
      ( ( comp_nat_nat_nat @ ( comp_nat_nat_nat @ F @ G ) @ H )
      = ( comp_nat_nat_nat @ F @ ( comp_nat_nat_nat @ G @ H ) ) ) ).

% comp_assoc
thf(fact_316_comp__assoc,axiom,
    ! [F: nat > nat,G: int > nat,H: int > int] :
      ( ( comp_int_nat_int @ ( comp_nat_nat_int @ F @ G ) @ H )
      = ( comp_nat_nat_int @ F @ ( comp_int_nat_int @ G @ H ) ) ) ).

% comp_assoc
thf(fact_317_comp__assoc,axiom,
    ! [F: int > nat,G: int > int,H: int > int] :
      ( ( comp_int_nat_int @ ( comp_int_nat_int @ F @ G ) @ H )
      = ( comp_int_nat_int @ F @ ( comp_int_int_int @ G @ H ) ) ) ).

% comp_assoc
thf(fact_318_comp__assoc,axiom,
    ! [F: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,G: code_integer > code_integer > code_integer,H: code_integer > code_integer] :
      ( ( comp_C1593894019821074884nteger @ ( comp_C8797469213163452608nteger @ F @ G ) @ H )
      = ( comp_C8797469213163452608nteger @ F @ ( comp_C2931745410781319416nteger @ G @ H ) ) ) ).

% comp_assoc
thf(fact_319_comp__assoc,axiom,
    ! [F: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,G: ( code_integer > code_integer ) > code_integer > code_integer,H: code_integer > code_integer > code_integer] :
      ( ( comp_C8797469213163452608nteger @ ( comp_C3983183376822107068nteger @ F @ G ) @ H )
      = ( comp_C8797469213163452608nteger @ F @ ( comp_C2822359487432382964nteger @ G @ H ) ) ) ).

% comp_assoc
thf(fact_320_comp__eq__dest,axiom,
    ! [A: char > char,B: code_integer > char,C: char > char,D: code_integer > char,V: code_integer] :
      ( ( ( comp_c4562247934908617188nteger @ A @ B )
        = ( comp_c4562247934908617188nteger @ C @ D ) )
     => ( ( A @ ( B @ V ) )
        = ( C @ ( D @ V ) ) ) ) ).

% comp_eq_dest
thf(fact_321_comp__eq__dest,axiom,
    ! [A: nat > num,B: int > nat,C: nat > num,D: int > nat,V: int] :
      ( ( ( comp_nat_num_int @ A @ B )
        = ( comp_nat_num_int @ C @ D ) )
     => ( ( A @ ( B @ V ) )
        = ( C @ ( D @ V ) ) ) ) ).

% comp_eq_dest
thf(fact_322_comp__eq__dest,axiom,
    ! [A: nat > nat,B: nat > nat,C: nat > nat,D: nat > nat,V: nat] :
      ( ( ( comp_nat_nat_nat @ A @ B )
        = ( comp_nat_nat_nat @ C @ D ) )
     => ( ( A @ ( B @ V ) )
        = ( C @ ( D @ V ) ) ) ) ).

% comp_eq_dest
thf(fact_323_comp__eq__dest,axiom,
    ! [A: int > nat,B: int > int,C: int > nat,D: int > int,V: int] :
      ( ( ( comp_int_nat_int @ A @ B )
        = ( comp_int_nat_int @ C @ D ) )
     => ( ( A @ ( B @ V ) )
        = ( C @ ( D @ V ) ) ) ) ).

% comp_eq_dest
thf(fact_324_comp__eq__dest,axiom,
    ! [A: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,B: code_integer > code_integer > code_integer,C: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,D: code_integer > code_integer > code_integer,V: code_integer] :
      ( ( ( comp_C8797469213163452608nteger @ A @ B )
        = ( comp_C8797469213163452608nteger @ C @ D ) )
     => ( ( A @ ( B @ V ) )
        = ( C @ ( D @ V ) ) ) ) ).

% comp_eq_dest
thf(fact_325_comp__eq__elim,axiom,
    ! [A: char > char,B: code_integer > char,C: char > char,D: code_integer > char] :
      ( ( ( comp_c4562247934908617188nteger @ A @ B )
        = ( comp_c4562247934908617188nteger @ C @ D ) )
     => ! [V2: code_integer] :
          ( ( A @ ( B @ V2 ) )
          = ( C @ ( D @ V2 ) ) ) ) ).

% comp_eq_elim
thf(fact_326_comp__eq__elim,axiom,
    ! [A: nat > num,B: int > nat,C: nat > num,D: int > nat] :
      ( ( ( comp_nat_num_int @ A @ B )
        = ( comp_nat_num_int @ C @ D ) )
     => ! [V2: int] :
          ( ( A @ ( B @ V2 ) )
          = ( C @ ( D @ V2 ) ) ) ) ).

% comp_eq_elim
thf(fact_327_comp__eq__elim,axiom,
    ! [A: nat > nat,B: nat > nat,C: nat > nat,D: nat > nat] :
      ( ( ( comp_nat_nat_nat @ A @ B )
        = ( comp_nat_nat_nat @ C @ D ) )
     => ! [V2: nat] :
          ( ( A @ ( B @ V2 ) )
          = ( C @ ( D @ V2 ) ) ) ) ).

% comp_eq_elim
thf(fact_328_comp__eq__elim,axiom,
    ! [A: int > nat,B: int > int,C: int > nat,D: int > int] :
      ( ( ( comp_int_nat_int @ A @ B )
        = ( comp_int_nat_int @ C @ D ) )
     => ! [V2: int] :
          ( ( A @ ( B @ V2 ) )
          = ( C @ ( D @ V2 ) ) ) ) ).

% comp_eq_elim
thf(fact_329_comp__eq__elim,axiom,
    ! [A: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,B: code_integer > code_integer > code_integer,C: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,D: code_integer > code_integer > code_integer] :
      ( ( ( comp_C8797469213163452608nteger @ A @ B )
        = ( comp_C8797469213163452608nteger @ C @ D ) )
     => ! [V2: code_integer] :
          ( ( A @ ( B @ V2 ) )
          = ( C @ ( D @ V2 ) ) ) ) ).

% comp_eq_elim
thf(fact_330_comp__eq__dest__lhs,axiom,
    ! [A: char > char,B: code_integer > char,C: code_integer > char,V: code_integer] :
      ( ( ( comp_c4562247934908617188nteger @ A @ B )
        = C )
     => ( ( A @ ( B @ V ) )
        = ( C @ V ) ) ) ).

% comp_eq_dest_lhs
thf(fact_331_comp__eq__dest__lhs,axiom,
    ! [A: nat > num,B: int > nat,C: int > num,V: int] :
      ( ( ( comp_nat_num_int @ A @ B )
        = C )
     => ( ( A @ ( B @ V ) )
        = ( C @ V ) ) ) ).

% comp_eq_dest_lhs
thf(fact_332_comp__eq__dest__lhs,axiom,
    ! [A: nat > nat,B: nat > nat,C: nat > nat,V: nat] :
      ( ( ( comp_nat_nat_nat @ A @ B )
        = C )
     => ( ( A @ ( B @ V ) )
        = ( C @ V ) ) ) ).

% comp_eq_dest_lhs
thf(fact_333_comp__eq__dest__lhs,axiom,
    ! [A: int > nat,B: int > int,C: int > nat,V: int] :
      ( ( ( comp_int_nat_int @ A @ B )
        = C )
     => ( ( A @ ( B @ V ) )
        = ( C @ V ) ) ) ).

% comp_eq_dest_lhs
thf(fact_334_comp__eq__dest__lhs,axiom,
    ! [A: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,B: code_integer > code_integer > code_integer,C: code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger,V: code_integer] :
      ( ( ( comp_C8797469213163452608nteger @ A @ B )
        = C )
     => ( ( A @ ( B @ V ) )
        = ( C @ V ) ) ) ).

% comp_eq_dest_lhs
thf(fact_335_effectI,axiom,
    ! [C: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit,R: product_unit,H2: heap_e7401611519738050253t_unit,N: nat] :
      ( ( ( heap_T875086893843062177t_unit @ C @ H )
        = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R @ ( produc584006145561248582it_nat @ H2 @ N ) ) ) )
     => ( heap_T6553295506729943825t_unit @ C @ H @ H2 @ R @ N ) ) ).

% effectI
thf(fact_336_effectI,axiom,
    ! [C: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,R: a,H2: heap_e7401611519738050253t_unit,N: nat] :
      ( ( ( heap_Time_execute_a @ C @ H )
        = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ R @ ( produc584006145561248582it_nat @ H2 @ N ) ) ) )
     => ( heap_Time_effect_a @ C @ H @ H2 @ R @ N ) ) ).

% effectI
thf(fact_337_effect__def,axiom,
    ( heap_T6553295506729943825t_unit
    = ( ^ [C3: heap_T5738788834812785303t_unit,H4: heap_e7401611519738050253t_unit,H7: heap_e7401611519738050253t_unit,R4: product_unit,N5: nat] :
          ( ( heap_T875086893843062177t_unit @ C3 @ H4 )
          = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R4 @ ( produc584006145561248582it_nat @ H7 @ N5 ) ) ) ) ) ) ).

% effect_def
thf(fact_338_effect__def,axiom,
    ( heap_Time_effect_a
    = ( ^ [C3: heap_Time_Heap_a,H4: heap_e7401611519738050253t_unit,H7: heap_e7401611519738050253t_unit,R4: a,N5: nat] :
          ( ( heap_Time_execute_a @ C3 @ H4 )
          = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ R4 @ ( produc584006145561248582it_nat @ H7 @ N5 ) ) ) ) ) ) ).

% effect_def
thf(fact_339_ureturn__def,axiom,
    ( heap_Time_ureturn_a
    = ( ^ [X4: a] :
          ( heap_Time_heap_a
          @ ^ [H4: heap_e7401611519738050253t_unit] : ( produc9178034014595674355it_nat @ X4 @ ( produc584006145561248582it_nat @ H4 @ zero_zero_nat ) ) ) ) ) ).

% ureturn_def
thf(fact_340_return__def,axiom,
    ( heap_Time_return_a
    = ( ^ [X4: a] :
          ( heap_Time_heap_a
          @ ^ [H4: heap_e7401611519738050253t_unit] : ( produc9178034014595674355it_nat @ X4 @ ( produc584006145561248582it_nat @ H4 @ one_one_nat ) ) ) ) ) ).

% return_def
thf(fact_341_execute__bind__eq__SomeI,axiom,
    ! [F: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit,X: product_unit,H2: heap_e7401611519738050253t_unit,N: nat,G: product_unit > heap_T5738788834812785303t_unit,Y3: product_unit,H5: heap_e7401611519738050253t_unit,N3: nat] :
      ( ( ( heap_T875086893843062177t_unit @ F @ H )
        = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ X @ ( produc584006145561248582it_nat @ H2 @ N ) ) ) )
     => ( ( ( heap_T875086893843062177t_unit @ ( G @ X ) @ H2 )
          = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ Y3 @ ( produc584006145561248582it_nat @ H5 @ N3 ) ) ) )
       => ( ( heap_T875086893843062177t_unit @ ( heap_T2633723481742716231t_unit @ F @ G ) @ H )
          = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ Y3 @ ( produc584006145561248582it_nat @ H5 @ ( plus_plus_nat @ N @ N3 ) ) ) ) ) ) ) ).

% execute_bind_eq_SomeI
thf(fact_342_execute__bind__eq__SomeI,axiom,
    ! [F: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit,X: product_unit,H2: heap_e7401611519738050253t_unit,N: nat,G: product_unit > heap_Time_Heap_a,Y3: a,H5: heap_e7401611519738050253t_unit,N3: nat] :
      ( ( ( heap_T875086893843062177t_unit @ F @ H )
        = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ X @ ( produc584006145561248582it_nat @ H2 @ N ) ) ) )
     => ( ( ( heap_Time_execute_a @ ( G @ X ) @ H2 )
          = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ Y3 @ ( produc584006145561248582it_nat @ H5 @ N3 ) ) ) )
       => ( ( heap_Time_execute_a @ ( heap_T757603679106148408unit_a @ F @ G ) @ H )
          = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ Y3 @ ( produc584006145561248582it_nat @ H5 @ ( plus_plus_nat @ N @ N3 ) ) ) ) ) ) ) ).

% execute_bind_eq_SomeI
thf(fact_343_execute__bind__eq__SomeI,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,X: a,H2: heap_e7401611519738050253t_unit,N: nat,G: a > heap_T5738788834812785303t_unit,Y3: product_unit,H5: heap_e7401611519738050253t_unit,N3: nat] :
      ( ( ( heap_Time_execute_a @ F @ H )
        = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ X @ ( produc584006145561248582it_nat @ H2 @ N ) ) ) )
     => ( ( ( heap_T875086893843062177t_unit @ ( G @ X ) @ H2 )
          = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ Y3 @ ( produc584006145561248582it_nat @ H5 @ N3 ) ) ) )
       => ( ( heap_T875086893843062177t_unit @ ( heap_T8685611227969916822t_unit @ F @ G ) @ H )
          = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ Y3 @ ( produc584006145561248582it_nat @ H5 @ ( plus_plus_nat @ N @ N3 ) ) ) ) ) ) ) ).

% execute_bind_eq_SomeI
thf(fact_344_execute__bind__eq__SomeI,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,X: a,H2: heap_e7401611519738050253t_unit,N: nat,G: a > heap_Time_Heap_a,Y3: a,H5: heap_e7401611519738050253t_unit,N3: nat] :
      ( ( ( heap_Time_execute_a @ F @ H )
        = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ X @ ( produc584006145561248582it_nat @ H2 @ N ) ) ) )
     => ( ( ( heap_Time_execute_a @ ( G @ X ) @ H2 )
          = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ Y3 @ ( produc584006145561248582it_nat @ H5 @ N3 ) ) ) )
       => ( ( heap_Time_execute_a @ ( heap_Time_bind_a_a @ F @ G ) @ H )
          = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ Y3 @ ( produc584006145561248582it_nat @ H5 @ ( plus_plus_nat @ N @ N3 ) ) ) ) ) ) ) ).

% execute_bind_eq_SomeI
thf(fact_345_success__bind__executeI,axiom,
    ! [F: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit,X: product_unit,H2: heap_e7401611519738050253t_unit,N: nat,G: product_unit > heap_Time_Heap_a] :
      ( ( ( heap_T875086893843062177t_unit @ F @ H )
        = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ X @ ( produc584006145561248582it_nat @ H2 @ N ) ) ) )
     => ( ( heap_Time_success_a @ ( G @ X ) @ H2 )
       => ( heap_Time_success_a @ ( heap_T757603679106148408unit_a @ F @ G ) @ H ) ) ) ).

% success_bind_executeI
thf(fact_346_success__bind__executeI,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,X: a,H2: heap_e7401611519738050253t_unit,N: nat,G: a > heap_Time_Heap_a] :
      ( ( ( heap_Time_execute_a @ F @ H )
        = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ X @ ( produc584006145561248582it_nat @ H2 @ N ) ) ) )
     => ( ( heap_Time_success_a @ ( G @ X ) @ H2 )
       => ( heap_Time_success_a @ ( heap_Time_bind_a_a @ F @ G ) @ H ) ) ) ).

% success_bind_executeI
thf(fact_347_execute__tap,axiom,
    ! [F: heap_e7401611519738050253t_unit > product_unit,H: heap_e7401611519738050253t_unit] :
      ( ( heap_T875086893843062177t_unit @ ( heap_T560649228465745139t_unit @ F ) @ H )
      = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ ( F @ H ) @ ( produc584006145561248582it_nat @ H @ one_one_nat ) ) ) ) ).

% execute_tap
thf(fact_348_execute__tap,axiom,
    ! [F: heap_e7401611519738050253t_unit > a,H: heap_e7401611519738050253t_unit] :
      ( ( heap_Time_execute_a @ ( heap_Time_tap_a @ F ) @ H )
      = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ ( F @ H ) @ ( produc584006145561248582it_nat @ H @ one_one_nat ) ) ) ) ).

% execute_tap
thf(fact_349_execute__assert_I1_J,axiom,
    ! [P: product_unit > $o,X: product_unit,H: heap_e7401611519738050253t_unit] :
      ( ( P @ X )
     => ( ( heap_T875086893843062177t_unit @ ( heap_T4208721593536448476t_unit @ P @ X ) @ H )
        = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ X @ ( produc584006145561248582it_nat @ H @ one_one_nat ) ) ) ) ) ).

% execute_assert(1)
thf(fact_350_execute__assert_I1_J,axiom,
    ! [P: a > $o,X: a,H: heap_e7401611519738050253t_unit] :
      ( ( P @ X )
     => ( ( heap_Time_execute_a @ ( heap_Time_assert_a @ P @ X ) @ H )
        = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ X @ ( produc584006145561248582it_nat @ H @ one_one_nat ) ) ) ) ) ).

% execute_assert(1)
thf(fact_351_tap__def,axiom,
    ( heap_Time_tap_a
    = ( ^ [F2: heap_e7401611519738050253t_unit > a] :
          ( heap_Time_Heap_a2
          @ ^ [H4: heap_e7401611519738050253t_unit] : ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ ( F2 @ H4 ) @ ( produc584006145561248582it_nat @ H4 @ one_one_nat ) ) ) ) ) ) ).

% tap_def
thf(fact_352_tap__def,axiom,
    ( heap_T560649228465745139t_unit
    = ( ^ [F2: heap_e7401611519738050253t_unit > product_unit] :
          ( heap_T6183433275982383450t_unit
          @ ^ [H4: heap_e7401611519738050253t_unit] : ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ ( F2 @ H4 ) @ ( produc584006145561248582it_nat @ H4 @ one_one_nat ) ) ) ) ) ) ).

% tap_def
thf(fact_353_prod__cases3,axiom,
    ! [Y3: produc8763457246119570046nteger] :
      ~ ! [A2: code_integer > option6357759511663192854e_term,B2: code_integer,C2: code_integer] :
          ( Y3
         != ( produc6137756002093451184nteger @ A2 @ ( produc1086072967326762835nteger @ B2 @ C2 ) ) ) ).

% prod_cases3
thf(fact_354_prod__cases3,axiom,
    ! [Y3: produc989692990947075319atural] :
      ~ ! [A2: produc4972180933644002618e_term > option6357759511663192854e_term,B2: code_natural,C2: code_natural] :
          ( Y3
         != ( produc3831813291587773865atural @ A2 @ ( produc3574140220909816553atural @ B2 @ C2 ) ) ) ).

% prod_cases3
thf(fact_355_prod__cases3,axiom,
    ! [Y3: produc1908205239877642774nteger] :
      ~ ! [A2: produc6241069584506657477e_term > option6357759511663192854e_term,B2: code_integer,C2: code_integer] :
          ( Y3
         != ( produc8603105652947943368nteger @ A2 @ ( produc1086072967326762835nteger @ B2 @ C2 ) ) ) ).

% prod_cases3
thf(fact_356_prod__cases3,axiom,
    ! [Y3: produc2285326912895808259nt_int] :
      ~ ! [A2: produc8551481072490612790e_term > option6357759511663192854e_term,B2: int,C2: int] :
          ( Y3
         != ( produc5700946648718959541nt_int @ A2 @ ( product_Pair_int_int @ B2 @ C2 ) ) ) ).

% prod_cases3
thf(fact_357_prod__cases3,axiom,
    ! [Y3: produc7773217078559923341nt_int] :
      ~ ! [A2: int > option6357759511663192854e_term,B2: int,C2: int] :
          ( Y3
         != ( produc4305682042979456191nt_int @ A2 @ ( product_Pair_int_int @ B2 @ C2 ) ) ) ).

% prod_cases3
thf(fact_358_execute__bind_I1_J,axiom,
    ! [F: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit,X: product_unit,H2: heap_e7401611519738050253t_unit,N: nat,G: product_unit > heap_Time_Heap_a] :
      ( ( ( heap_T875086893843062177t_unit @ F @ H )
        = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ X @ ( produc584006145561248582it_nat @ H2 @ N ) ) ) )
     => ( ( heap_Time_execute_a @ ( heap_T757603679106148408unit_a @ F @ G ) @ H )
        = ( heap_T7616092557645711335rame_a @ N @ ( heap_Time_execute_a @ ( G @ X ) @ H2 ) ) ) ) ).

% execute_bind(1)
thf(fact_359_execute__bind_I1_J,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,X: a,H2: heap_e7401611519738050253t_unit,N: nat,G: a > heap_Time_Heap_a] :
      ( ( ( heap_Time_execute_a @ F @ H )
        = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ X @ ( produc584006145561248582it_nat @ H2 @ N ) ) ) )
     => ( ( heap_Time_execute_a @ ( heap_Time_bind_a_a @ F @ G ) @ H )
        = ( heap_T7616092557645711335rame_a @ N @ ( heap_Time_execute_a @ ( G @ X ) @ H2 ) ) ) ) ).

% execute_bind(1)
thf(fact_360_timeFrame_Oelims,axiom,
    ! [X: nat,Xa: option3562590408128118217it_nat,Y3: option3562590408128118217it_nat] :
      ( ( ( heap_T7616092557645711335rame_a @ X @ Xa )
        = Y3 )
     => ( ! [R2: a,H6: heap_e7401611519738050253t_unit,N4: nat] :
            ( ( Xa
              = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ N4 ) ) ) )
           => ( Y3
             != ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ ( plus_plus_nat @ X @ N4 ) ) ) ) ) )
       => ~ ( ( Xa = none_P2651198173097904984it_nat )
           => ( Y3 != none_P2651198173097904984it_nat ) ) ) ) ).

% timeFrame.elims
thf(fact_361_timeFrame_Oelims,axiom,
    ! [X: nat,Xa: option8956607266484857688it_nat,Y3: option8956607266484857688it_nat] :
      ( ( ( heap_T3616969660504097270t_unit @ X @ Xa )
        = Y3 )
     => ( ! [R2: product_unit,H6: heap_e7401611519738050253t_unit,N4: nat] :
            ( ( Xa
              = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ N4 ) ) ) )
           => ( Y3
             != ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ ( plus_plus_nat @ X @ N4 ) ) ) ) ) )
       => ~ ( ( Xa = none_P9117596204409417319it_nat )
           => ( Y3 != none_P9117596204409417319it_nat ) ) ) ) ).

% timeFrame.elims
thf(fact_362_timeFrame_Osimps_I1_J,axiom,
    ! [N: nat,R: product_unit,H: heap_e7401611519738050253t_unit,N3: nat] :
      ( ( heap_T3616969660504097270t_unit @ N @ ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R @ ( produc584006145561248582it_nat @ H @ N3 ) ) ) )
      = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R @ ( produc584006145561248582it_nat @ H @ ( plus_plus_nat @ N @ N3 ) ) ) ) ) ).

% timeFrame.simps(1)
thf(fact_363_K__record__comp,axiom,
    ! [C: char,F: code_integer > char] :
      ( ( comp_c4562247934908617188nteger
        @ ^ [X4: char] : C
        @ F )
      = ( ^ [X4: code_integer] : C ) ) ).

% K_record_comp
thf(fact_364_K__record__comp,axiom,
    ! [C: num,F: int > nat] :
      ( ( comp_nat_num_int
        @ ^ [X4: nat] : C
        @ F )
      = ( ^ [X4: int] : C ) ) ).

% K_record_comp
thf(fact_365_K__record__comp,axiom,
    ! [C: nat,F: nat > nat] :
      ( ( comp_nat_nat_nat
        @ ^ [X4: nat] : C
        @ F )
      = ( ^ [X4: nat] : C ) ) ).

% K_record_comp
thf(fact_366_K__record__comp,axiom,
    ! [C: nat,F: int > int] :
      ( ( comp_int_nat_int
        @ ^ [X4: int] : C
        @ F )
      = ( ^ [X4: int] : C ) ) ).

% K_record_comp
thf(fact_367_K__record__comp,axiom,
    ! [C: produc8923325533196201883nteger > produc8923325533196201883nteger,F: code_integer > code_integer > code_integer] :
      ( ( comp_C8797469213163452608nteger
        @ ^ [X4: code_integer > code_integer] : C
        @ F )
      = ( ^ [X4: code_integer] : C ) ) ).

% K_record_comp
thf(fact_368_fun_Omap__ident,axiom,
    ! [T: code_integer > char] :
      ( ( comp_c4562247934908617188nteger
        @ ^ [X4: char] : X4
        @ T )
      = T ) ).

% fun.map_ident
thf(fact_369_fun_Omap__ident,axiom,
    ! [T: nat > nat] :
      ( ( comp_nat_nat_nat
        @ ^ [X4: nat] : X4
        @ T )
      = T ) ).

% fun.map_ident
thf(fact_370_pred__equals__eq2,axiom,
    ! [R5: set_Pr8056137968301705908nteger,S3: set_Pr8056137968301705908nteger] :
      ( ( ( ^ [X4: code_integer > option6357759511663192854e_term,Y: produc8923325533196201883nteger] : ( member3068662437193594005nteger @ ( produc6137756002093451184nteger @ X4 @ Y ) @ R5 ) )
        = ( ^ [X4: code_integer > option6357759511663192854e_term,Y: produc8923325533196201883nteger] : ( member3068662437193594005nteger @ ( produc6137756002093451184nteger @ X4 @ Y ) @ S3 ) ) )
      = ( R5 = S3 ) ) ).

% pred_equals_eq2
thf(fact_371_pred__equals__eq2,axiom,
    ! [R5: set_Pr4244404650639074861atural,S3: set_Pr4244404650639074861atural] :
      ( ( ( ^ [X4: produc4972180933644002618e_term > option6357759511663192854e_term,Y: produc7822875418678951345atural] : ( member3245610415464309390atural @ ( produc3831813291587773865atural @ X4 @ Y ) @ R5 ) )
        = ( ^ [X4: produc4972180933644002618e_term > option6357759511663192854e_term,Y: produc7822875418678951345atural] : ( member3245610415464309390atural @ ( produc3831813291587773865atural @ X4 @ Y ) @ S3 ) ) )
      = ( R5 = S3 ) ) ).

% pred_equals_eq2
thf(fact_372_pred__equals__eq2,axiom,
    ! [R5: set_Pr1281608226676607948nteger,S3: set_Pr1281608226676607948nteger] :
      ( ( ( ^ [X4: produc6241069584506657477e_term > option6357759511663192854e_term,Y: produc8923325533196201883nteger] : ( member4164122664394876845nteger @ ( produc8603105652947943368nteger @ X4 @ Y ) @ R5 ) )
        = ( ^ [X4: produc6241069584506657477e_term > option6357759511663192854e_term,Y: produc8923325533196201883nteger] : ( member4164122664394876845nteger @ ( produc8603105652947943368nteger @ X4 @ Y ) @ S3 ) ) )
      = ( R5 = S3 ) ) ).

% pred_equals_eq2
thf(fact_373_pred__equals__eq2,axiom,
    ! [R5: set_Pr9222295170931077689nt_int,S3: set_Pr9222295170931077689nt_int] :
      ( ( ( ^ [X4: produc8551481072490612790e_term > option6357759511663192854e_term,Y: product_prod_int_int] : ( member7618704894036264090nt_int @ ( produc5700946648718959541nt_int @ X4 @ Y ) @ R5 ) )
        = ( ^ [X4: produc8551481072490612790e_term > option6357759511663192854e_term,Y: product_prod_int_int] : ( member7618704894036264090nt_int @ ( produc5700946648718959541nt_int @ X4 @ Y ) @ S3 ) ) )
      = ( R5 = S3 ) ) ).

% pred_equals_eq2
thf(fact_374_pred__equals__eq2,axiom,
    ! [R5: set_Pr1872883991513573699nt_int,S3: set_Pr1872883991513573699nt_int] :
      ( ( ( ^ [X4: int > option6357759511663192854e_term,Y: product_prod_int_int] : ( member7034335876925520548nt_int @ ( produc4305682042979456191nt_int @ X4 @ Y ) @ R5 ) )
        = ( ^ [X4: int > option6357759511663192854e_term,Y: product_prod_int_int] : ( member7034335876925520548nt_int @ ( produc4305682042979456191nt_int @ X4 @ Y ) @ S3 ) ) )
      = ( R5 = S3 ) ) ).

% pred_equals_eq2
thf(fact_375_divides__aux__eq,axiom,
    ! [Q2: nat,R: nat] :
      ( ( unique6322359934112328802ux_nat @ ( product_Pair_nat_nat @ Q2 @ R ) )
      = ( R = zero_zero_nat ) ) ).

% divides_aux_eq
thf(fact_376_divides__aux__eq,axiom,
    ! [Q2: int,R: int] :
      ( ( unique6319869463603278526ux_int @ ( product_Pair_int_int @ Q2 @ R ) )
      = ( R = zero_zero_int ) ) ).

% divides_aux_eq
thf(fact_377_divides__aux__eq,axiom,
    ! [Q2: code_integer,R: code_integer] :
      ( ( unique5706413561485394159nteger @ ( produc1086072967326762835nteger @ Q2 @ R ) )
      = ( R = zero_z3403309356797280102nteger ) ) ).

% divides_aux_eq
thf(fact_378_wait__def,axiom,
    ( heap_Time_wait
    = ( ^ [N5: nat] :
          ( heap_T6183433275982383450t_unit
          @ ^ [H4: heap_e7401611519738050253t_unit] : ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ product_Unity @ ( produc584006145561248582it_nat @ H4 @ N5 ) ) ) ) ) ) ).

% wait_def
thf(fact_379_one__natural_Orsp,axiom,
    one_one_nat = one_one_nat ).

% one_natural.rsp
thf(fact_380_fun_Omap__comp,axiom,
    ! [G: num > num,F: nat > num,V: int > nat] :
      ( ( comp_num_num_int @ G @ ( comp_nat_num_int @ F @ V ) )
      = ( comp_nat_num_int @ ( comp_num_num_nat @ G @ F ) @ V ) ) ).

% fun.map_comp
thf(fact_381_fun_Omap__comp,axiom,
    ! [G: nat > nat,F: int > nat,V: int > int] :
      ( ( comp_nat_nat_int @ G @ ( comp_int_nat_int @ F @ V ) )
      = ( comp_int_nat_int @ ( comp_nat_nat_int @ G @ F ) @ V ) ) ).

% fun.map_comp
thf(fact_382_fun_Omap__comp,axiom,
    ! [G: char > char,F: code_integer > char,V: code_integer > code_integer] :
      ( ( comp_c4562247934908617188nteger @ G @ ( comp_C3856975138083468656nteger @ F @ V ) )
      = ( comp_C3856975138083468656nteger @ ( comp_c4562247934908617188nteger @ G @ F ) @ V ) ) ).

% fun.map_comp
thf(fact_383_fun_Omap__comp,axiom,
    ! [G: char > char,F: char > char,V: code_integer > char] :
      ( ( comp_c4562247934908617188nteger @ G @ ( comp_c4562247934908617188nteger @ F @ V ) )
      = ( comp_c4562247934908617188nteger @ ( comp_char_char_char @ G @ F ) @ V ) ) ).

% fun.map_comp
thf(fact_384_fun_Omap__comp,axiom,
    ! [G: nat > num,F: nat > nat,V: int > nat] :
      ( ( comp_nat_num_int @ G @ ( comp_nat_nat_int @ F @ V ) )
      = ( comp_nat_num_int @ ( comp_nat_num_nat @ G @ F ) @ V ) ) ).

% fun.map_comp
thf(fact_385_fun_Omap__comp,axiom,
    ! [G: nat > num,F: int > nat,V: int > int] :
      ( ( comp_nat_num_int @ G @ ( comp_int_nat_int @ F @ V ) )
      = ( comp_int_num_int @ ( comp_nat_num_int @ G @ F ) @ V ) ) ).

% fun.map_comp
thf(fact_386_fun_Omap__comp,axiom,
    ! [G: nat > nat,F: nat > nat,V: nat > nat] :
      ( ( comp_nat_nat_nat @ G @ ( comp_nat_nat_nat @ F @ V ) )
      = ( comp_nat_nat_nat @ ( comp_nat_nat_nat @ G @ F ) @ V ) ) ).

% fun.map_comp
thf(fact_387_fun_Omap__comp,axiom,
    ! [G: int > nat,F: int > int,V: int > int] :
      ( ( comp_int_nat_int @ G @ ( comp_int_int_int @ F @ V ) )
      = ( comp_int_nat_int @ ( comp_int_nat_int @ G @ F ) @ V ) ) ).

% fun.map_comp
thf(fact_388_fun_Omap__comp,axiom,
    ! [G: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,F: code_integer > code_integer > code_integer,V: code_integer > code_integer] :
      ( ( comp_C8797469213163452608nteger @ G @ ( comp_C2931745410781319416nteger @ F @ V ) )
      = ( comp_C1593894019821074884nteger @ ( comp_C8797469213163452608nteger @ G @ F ) @ V ) ) ).

% fun.map_comp
thf(fact_389_fun_Omap__comp,axiom,
    ! [G: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,F: ( code_integer > code_integer ) > code_integer > code_integer,V: code_integer > code_integer > code_integer] :
      ( ( comp_C8797469213163452608nteger @ G @ ( comp_C2822359487432382964nteger @ F @ V ) )
      = ( comp_C8797469213163452608nteger @ ( comp_C3983183376822107068nteger @ G @ F ) @ V ) ) ).

% fun.map_comp
thf(fact_390_old_Ounit_Oexhaust,axiom,
    ! [Y3: product_unit] : Y3 = product_Unity ).

% old.unit.exhaust
thf(fact_391_unit__all__impI,axiom,
    ! [P: product_unit > $o,Q: product_unit > $o] :
      ( ( ( P @ product_Unity )
       => ( Q @ product_Unity ) )
     => ! [X6: product_unit] :
          ( ( P @ X6 )
         => ( Q @ X6 ) ) ) ).

% unit_all_impI
thf(fact_392_eq__sym__Unity__conv,axiom,
    ! [X: $o] :
      ( ( X
        = ( product_Unity = product_Unity ) )
      = X ) ).

% eq_sym_Unity_conv
thf(fact_393_timeFrame_Osimps_I2_J,axiom,
    ! [N: nat] :
      ( ( heap_T7616092557645711335rame_a @ N @ none_P2651198173097904984it_nat )
      = none_P2651198173097904984it_nat ) ).

% timeFrame.simps(2)
thf(fact_394_zero__natural_Orsp,axiom,
    zero_zero_nat = zero_zero_nat ).

% zero_natural.rsp
thf(fact_395_default__unit__def,axiom,
    defaul566961228789861419t_unit = product_Unity ).

% default_unit_def
thf(fact_396_timeFrame_Opelims,axiom,
    ! [X: nat,Xa: option3562590408128118217it_nat,Y3: option3562590408128118217it_nat] :
      ( ( ( heap_T7616092557645711335rame_a @ X @ Xa )
        = Y3 )
     => ( ( accp_P6263092265436569219it_nat @ heap_T8132184524487034138_rel_a @ ( produc4111269673004989362it_nat @ X @ Xa ) )
       => ( ! [R2: a,H6: heap_e7401611519738050253t_unit,N4: nat] :
              ( ( Xa
                = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ N4 ) ) ) )
             => ( ( Y3
                  = ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ ( plus_plus_nat @ X @ N4 ) ) ) ) )
               => ~ ( accp_P6263092265436569219it_nat @ heap_T8132184524487034138_rel_a @ ( produc4111269673004989362it_nat @ X @ ( some_P7913643980934408916it_nat @ ( produc9178034014595674355it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ N4 ) ) ) ) ) ) )
         => ~ ( ( Xa = none_P2651198173097904984it_nat )
             => ( ( Y3 = none_P2651198173097904984it_nat )
               => ~ ( accp_P6263092265436569219it_nat @ heap_T8132184524487034138_rel_a @ ( produc4111269673004989362it_nat @ X @ none_P2651198173097904984it_nat ) ) ) ) ) ) ) ).

% timeFrame.pelims
thf(fact_397_timeFrame_Opelims,axiom,
    ! [X: nat,Xa: option8956607266484857688it_nat,Y3: option8956607266484857688it_nat] :
      ( ( ( heap_T3616969660504097270t_unit @ X @ Xa )
        = Y3 )
     => ( ( accp_P414730952086964626it_nat @ heap_T996182799752388649t_unit @ ( produc638857205735767105it_nat @ X @ Xa ) )
       => ( ! [R2: product_unit,H6: heap_e7401611519738050253t_unit,N4: nat] :
              ( ( Xa
                = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ N4 ) ) ) )
             => ( ( Y3
                  = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ ( plus_plus_nat @ X @ N4 ) ) ) ) )
               => ~ ( accp_P414730952086964626it_nat @ heap_T996182799752388649t_unit @ ( produc638857205735767105it_nat @ X @ ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ R2 @ ( produc584006145561248582it_nat @ H6 @ N4 ) ) ) ) ) ) )
         => ~ ( ( Xa = none_P9117596204409417319it_nat )
             => ( ( Y3 = none_P9117596204409417319it_nat )
               => ~ ( accp_P414730952086964626it_nat @ heap_T996182799752388649t_unit @ ( produc638857205735767105it_nat @ X @ none_P9117596204409417319it_nat ) ) ) ) ) ) ) ).

% timeFrame.pelims
thf(fact_398_type__copy__map__cong0,axiom,
    ! [M2: code_integer > char,G: code_integer > code_integer,X: code_integer,N6: char > char,H: code_integer > char,F: char > char] :
      ( ( ( M2 @ ( G @ X ) )
        = ( N6 @ ( H @ X ) ) )
     => ( ( comp_C3856975138083468656nteger @ ( comp_c4562247934908617188nteger @ F @ M2 ) @ G @ X )
        = ( comp_c4562247934908617188nteger @ ( comp_char_char_char @ F @ N6 ) @ H @ X ) ) ) ).

% type_copy_map_cong0
thf(fact_399_type__copy__map__cong0,axiom,
    ! [M2: int > nat,G: int > int,X: int,N6: nat > nat,H: int > nat,F: nat > num] :
      ( ( ( M2 @ ( G @ X ) )
        = ( N6 @ ( H @ X ) ) )
     => ( ( comp_int_num_int @ ( comp_nat_num_int @ F @ M2 ) @ G @ X )
        = ( comp_nat_num_int @ ( comp_nat_num_nat @ F @ N6 ) @ H @ X ) ) ) ).

% type_copy_map_cong0
thf(fact_400_type__copy__map__cong0,axiom,
    ! [M2: nat > nat,G: int > nat,X: int,N6: int > nat,H: int > int,F: nat > nat] :
      ( ( ( M2 @ ( G @ X ) )
        = ( N6 @ ( H @ X ) ) )
     => ( ( comp_nat_nat_int @ ( comp_nat_nat_nat @ F @ M2 ) @ G @ X )
        = ( comp_int_nat_int @ ( comp_nat_nat_int @ F @ N6 ) @ H @ X ) ) ) ).

% type_copy_map_cong0
thf(fact_401_type__copy__map__cong0,axiom,
    ! [M2: int > int,G: nat > int,X: nat,N6: nat > int,H: nat > nat,F: int > nat] :
      ( ( ( M2 @ ( G @ X ) )
        = ( N6 @ ( H @ X ) ) )
     => ( ( comp_int_nat_nat @ ( comp_int_nat_int @ F @ M2 ) @ G @ X )
        = ( comp_nat_nat_nat @ ( comp_int_nat_nat @ F @ N6 ) @ H @ X ) ) ) ).

% type_copy_map_cong0
thf(fact_402_type__copy__map__cong0,axiom,
    ! [M2: char > char,G: code_integer > char,X: code_integer,N6: code_integer > char,H: code_integer > code_integer,F: char > char] :
      ( ( ( M2 @ ( G @ X ) )
        = ( N6 @ ( H @ X ) ) )
     => ( ( comp_c4562247934908617188nteger @ ( comp_char_char_char @ F @ M2 ) @ G @ X )
        = ( comp_C3856975138083468656nteger @ ( comp_c4562247934908617188nteger @ F @ N6 ) @ H @ X ) ) ) ).

% type_copy_map_cong0
thf(fact_403_type__copy__map__cong0,axiom,
    ! [M2: nat > nat,G: int > nat,X: int,N6: int > nat,H: int > int,F: nat > num] :
      ( ( ( M2 @ ( G @ X ) )
        = ( N6 @ ( H @ X ) ) )
     => ( ( comp_nat_num_int @ ( comp_nat_num_nat @ F @ M2 ) @ G @ X )
        = ( comp_int_num_int @ ( comp_nat_num_int @ F @ N6 ) @ H @ X ) ) ) ).

% type_copy_map_cong0
thf(fact_404_type__copy__map__cong0,axiom,
    ! [M2: nat > int,G: nat > nat,X: nat,N6: int > int,H: nat > int,F: int > nat] :
      ( ( ( M2 @ ( G @ X ) )
        = ( N6 @ ( H @ X ) ) )
     => ( ( comp_nat_nat_nat @ ( comp_int_nat_nat @ F @ M2 ) @ G @ X )
        = ( comp_int_nat_nat @ ( comp_int_nat_int @ F @ N6 ) @ H @ X ) ) ) ).

% type_copy_map_cong0
thf(fact_405_type__copy__map__cong0,axiom,
    ! [M2: nat > nat,G: nat > nat,X: nat,N6: nat > nat,H: nat > nat,F: nat > nat] :
      ( ( ( M2 @ ( G @ X ) )
        = ( N6 @ ( H @ X ) ) )
     => ( ( comp_nat_nat_nat @ ( comp_nat_nat_nat @ F @ M2 ) @ G @ X )
        = ( comp_nat_nat_nat @ ( comp_nat_nat_nat @ F @ N6 ) @ H @ X ) ) ) ).

% type_copy_map_cong0
thf(fact_406_type__copy__map__cong0,axiom,
    ! [M2: int > nat,G: int > int,X: int,N6: nat > nat,H: int > nat,F: nat > nat] :
      ( ( ( M2 @ ( G @ X ) )
        = ( N6 @ ( H @ X ) ) )
     => ( ( comp_int_nat_int @ ( comp_nat_nat_int @ F @ M2 ) @ G @ X )
        = ( comp_nat_nat_int @ ( comp_nat_nat_nat @ F @ N6 ) @ H @ X ) ) ) ).

% type_copy_map_cong0
thf(fact_407_type__copy__map__cong0,axiom,
    ! [M2: int > int,G: int > int,X: int,N6: int > int,H: int > int,F: int > nat] :
      ( ( ( M2 @ ( G @ X ) )
        = ( N6 @ ( H @ X ) ) )
     => ( ( comp_int_nat_int @ ( comp_int_nat_int @ F @ M2 ) @ G @ X )
        = ( comp_int_nat_int @ ( comp_int_nat_int @ F @ N6 ) @ H @ X ) ) ) ).

% type_copy_map_cong0
thf(fact_408_comp__apply__eq,axiom,
    ! [F: char > char,G: code_integer > char,X: code_integer,H: char > char,K: code_integer > char] :
      ( ( ( F @ ( G @ X ) )
        = ( H @ ( K @ X ) ) )
     => ( ( comp_c4562247934908617188nteger @ F @ G @ X )
        = ( comp_c4562247934908617188nteger @ H @ K @ X ) ) ) ).

% comp_apply_eq
thf(fact_409_comp__apply__eq,axiom,
    ! [F: nat > num,G: int > nat,X: int,H: nat > num,K: int > nat] :
      ( ( ( F @ ( G @ X ) )
        = ( H @ ( K @ X ) ) )
     => ( ( comp_nat_num_int @ F @ G @ X )
        = ( comp_nat_num_int @ H @ K @ X ) ) ) ).

% comp_apply_eq
thf(fact_410_comp__apply__eq,axiom,
    ! [F: nat > nat,G: nat > nat,X: nat,H: nat > nat,K: nat > nat] :
      ( ( ( F @ ( G @ X ) )
        = ( H @ ( K @ X ) ) )
     => ( ( comp_nat_nat_nat @ F @ G @ X )
        = ( comp_nat_nat_nat @ H @ K @ X ) ) ) ).

% comp_apply_eq
thf(fact_411_comp__apply__eq,axiom,
    ! [F: int > nat,G: int > int,X: int,H: int > nat,K: int > int] :
      ( ( ( F @ ( G @ X ) )
        = ( H @ ( K @ X ) ) )
     => ( ( comp_int_nat_int @ F @ G @ X )
        = ( comp_int_nat_int @ H @ K @ X ) ) ) ).

% comp_apply_eq
thf(fact_412_comp__apply__eq,axiom,
    ! [F: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,G: code_integer > code_integer > code_integer,X: code_integer,H: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,K: code_integer > code_integer > code_integer] :
      ( ( ( F @ ( G @ X ) )
        = ( H @ ( K @ X ) ) )
     => ( ( comp_C8797469213163452608nteger @ F @ G @ X )
        = ( comp_C8797469213163452608nteger @ H @ K @ X ) ) ) ).

% comp_apply_eq
thf(fact_413_comp__cong,axiom,
    ! [F: char > char,G: code_integer > char,X: code_integer,F3: char > char,G3: code_integer > char,X7: code_integer] :
      ( ( ( F @ ( G @ X ) )
        = ( F3 @ ( G3 @ X7 ) ) )
     => ( ( comp_c4562247934908617188nteger @ F @ G @ X )
        = ( comp_c4562247934908617188nteger @ F3 @ G3 @ X7 ) ) ) ).

% comp_cong
thf(fact_414_comp__cong,axiom,
    ! [F: nat > num,G: int > nat,X: int,F3: nat > num,G3: int > nat,X7: int] :
      ( ( ( F @ ( G @ X ) )
        = ( F3 @ ( G3 @ X7 ) ) )
     => ( ( comp_nat_num_int @ F @ G @ X )
        = ( comp_nat_num_int @ F3 @ G3 @ X7 ) ) ) ).

% comp_cong
thf(fact_415_comp__cong,axiom,
    ! [F: nat > nat,G: nat > nat,X: nat,F3: nat > nat,G3: nat > nat,X7: nat] :
      ( ( ( F @ ( G @ X ) )
        = ( F3 @ ( G3 @ X7 ) ) )
     => ( ( comp_nat_nat_nat @ F @ G @ X )
        = ( comp_nat_nat_nat @ F3 @ G3 @ X7 ) ) ) ).

% comp_cong
thf(fact_416_comp__cong,axiom,
    ! [F: nat > nat,G: nat > nat,X: nat,F3: int > nat,G3: int > int,X7: int] :
      ( ( ( F @ ( G @ X ) )
        = ( F3 @ ( G3 @ X7 ) ) )
     => ( ( comp_nat_nat_nat @ F @ G @ X )
        = ( comp_int_nat_int @ F3 @ G3 @ X7 ) ) ) ).

% comp_cong
thf(fact_417_comp__cong,axiom,
    ! [F: int > nat,G: int > int,X: int,F3: nat > nat,G3: nat > nat,X7: nat] :
      ( ( ( F @ ( G @ X ) )
        = ( F3 @ ( G3 @ X7 ) ) )
     => ( ( comp_int_nat_int @ F @ G @ X )
        = ( comp_nat_nat_nat @ F3 @ G3 @ X7 ) ) ) ).

% comp_cong
thf(fact_418_comp__cong,axiom,
    ! [F: int > nat,G: int > int,X: int,F3: int > nat,G3: int > int,X7: int] :
      ( ( ( F @ ( G @ X ) )
        = ( F3 @ ( G3 @ X7 ) ) )
     => ( ( comp_int_nat_int @ F @ G @ X )
        = ( comp_int_nat_int @ F3 @ G3 @ X7 ) ) ) ).

% comp_cong
thf(fact_419_comp__cong,axiom,
    ! [F: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,G: code_integer > code_integer > code_integer,X: code_integer,F3: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,G3: code_integer > code_integer > code_integer,X7: code_integer] :
      ( ( ( F @ ( G @ X ) )
        = ( F3 @ ( G3 @ X7 ) ) )
     => ( ( comp_C8797469213163452608nteger @ F @ G @ X )
        = ( comp_C8797469213163452608nteger @ F3 @ G3 @ X7 ) ) ) ).

% comp_cong
thf(fact_420_Ints__odd__nonzero,axiom,
    ! [A: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( plus_plus_int @ ( plus_plus_int @ one_one_int @ A ) @ A )
       != zero_zero_int ) ) ).

% Ints_odd_nonzero
thf(fact_421_Ints__odd__nonzero,axiom,
    ! [A: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ A ) @ A )
       != zero_z3403309356797280102nteger ) ) ).

% Ints_odd_nonzero
thf(fact_422_Ints__odd__nonzero,axiom,
    ! [A: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( plus_plus_rat @ ( plus_plus_rat @ one_one_rat @ A ) @ A )
       != zero_zero_rat ) ) ).

% Ints_odd_nonzero
thf(fact_423_is__num__normalize_I1_J,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_424_is__num__normalize_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_425_ssubst__Pair__rhs,axiom,
    ! [R: code_integer > option6357759511663192854e_term,S: produc8923325533196201883nteger,R5: set_Pr8056137968301705908nteger,S4: produc8923325533196201883nteger] :
      ( ( member3068662437193594005nteger @ ( produc6137756002093451184nteger @ R @ S ) @ R5 )
     => ( ( S4 = S )
       => ( member3068662437193594005nteger @ ( produc6137756002093451184nteger @ R @ S4 ) @ R5 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_426_ssubst__Pair__rhs,axiom,
    ! [R: produc4972180933644002618e_term > option6357759511663192854e_term,S: produc7822875418678951345atural,R5: set_Pr4244404650639074861atural,S4: produc7822875418678951345atural] :
      ( ( member3245610415464309390atural @ ( produc3831813291587773865atural @ R @ S ) @ R5 )
     => ( ( S4 = S )
       => ( member3245610415464309390atural @ ( produc3831813291587773865atural @ R @ S4 ) @ R5 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_427_ssubst__Pair__rhs,axiom,
    ! [R: produc6241069584506657477e_term > option6357759511663192854e_term,S: produc8923325533196201883nteger,R5: set_Pr1281608226676607948nteger,S4: produc8923325533196201883nteger] :
      ( ( member4164122664394876845nteger @ ( produc8603105652947943368nteger @ R @ S ) @ R5 )
     => ( ( S4 = S )
       => ( member4164122664394876845nteger @ ( produc8603105652947943368nteger @ R @ S4 ) @ R5 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_428_ssubst__Pair__rhs,axiom,
    ! [R: produc8551481072490612790e_term > option6357759511663192854e_term,S: product_prod_int_int,R5: set_Pr9222295170931077689nt_int,S4: product_prod_int_int] :
      ( ( member7618704894036264090nt_int @ ( produc5700946648718959541nt_int @ R @ S ) @ R5 )
     => ( ( S4 = S )
       => ( member7618704894036264090nt_int @ ( produc5700946648718959541nt_int @ R @ S4 ) @ R5 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_429_ssubst__Pair__rhs,axiom,
    ! [R: int > option6357759511663192854e_term,S: product_prod_int_int,R5: set_Pr1872883991513573699nt_int,S4: product_prod_int_int] :
      ( ( member7034335876925520548nt_int @ ( produc4305682042979456191nt_int @ R @ S ) @ R5 )
     => ( ( S4 = S )
       => ( member7034335876925520548nt_int @ ( produc4305682042979456191nt_int @ R @ S4 ) @ R5 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_430_Ints__0,axiom,
    member_int @ zero_zero_int @ ring_1_Ints_int ).

% Ints_0
thf(fact_431_Ints__0,axiom,
    member_Code_integer @ zero_z3403309356797280102nteger @ ring_11222124179247155820nteger ).

% Ints_0
thf(fact_432_Ints__0,axiom,
    member_rat @ zero_zero_rat @ ring_1_Ints_rat ).

% Ints_0
thf(fact_433_Ints__add,axiom,
    ! [A: rat,B: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( member_rat @ B @ ring_1_Ints_rat )
       => ( member_rat @ ( plus_plus_rat @ A @ B ) @ ring_1_Ints_rat ) ) ) ).

% Ints_add
thf(fact_434_Ints__add,axiom,
    ! [A: int,B: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( member_int @ B @ ring_1_Ints_int )
       => ( member_int @ ( plus_plus_int @ A @ B ) @ ring_1_Ints_int ) ) ) ).

% Ints_add
thf(fact_435_Ints__1,axiom,
    member_int @ one_one_int @ ring_1_Ints_int ).

% Ints_1
thf(fact_436_Ints__1,axiom,
    member_Code_integer @ one_one_Code_integer @ ring_11222124179247155820nteger ).

% Ints_1
thf(fact_437_Ints__1,axiom,
    member_rat @ one_one_rat @ ring_1_Ints_rat ).

% Ints_1
thf(fact_438_Ints__double__eq__0__iff,axiom,
    ! [A: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( ( plus_plus_int @ A @ A )
          = zero_zero_int )
        = ( A = zero_zero_int ) ) ) ).

% Ints_double_eq_0_iff
thf(fact_439_Ints__double__eq__0__iff,axiom,
    ! [A: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( ( plus_p5714425477246183910nteger @ A @ A )
          = zero_z3403309356797280102nteger )
        = ( A = zero_z3403309356797280102nteger ) ) ) ).

% Ints_double_eq_0_iff
thf(fact_440_Ints__double__eq__0__iff,axiom,
    ! [A: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( ( plus_plus_rat @ A @ A )
          = zero_zero_rat )
        = ( A = zero_zero_rat ) ) ) ).

% Ints_double_eq_0_iff
thf(fact_441_dbl__inc__simps_I2_J,axiom,
    ( ( neg_nu5851722552734809277nc_int @ zero_zero_int )
    = one_one_int ) ).

% dbl_inc_simps(2)
thf(fact_442_dbl__inc__simps_I2_J,axiom,
    ( ( neg_nu5831290666863070958nteger @ zero_z3403309356797280102nteger )
    = one_one_Code_integer ) ).

% dbl_inc_simps(2)
thf(fact_443_dbl__inc__simps_I2_J,axiom,
    ( ( neg_nu5219082963157363817nc_rat @ zero_zero_rat )
    = one_one_rat ) ).

% dbl_inc_simps(2)
thf(fact_444_Ints__odd__less__0,axiom,
    ! [A: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ A ) @ A ) @ zero_z3403309356797280102nteger )
        = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ) ).

% Ints_odd_less_0
thf(fact_445_Ints__odd__less__0,axiom,
    ! [A: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( ord_less_rat @ ( plus_plus_rat @ ( plus_plus_rat @ one_one_rat @ A ) @ A ) @ zero_zero_rat )
        = ( ord_less_rat @ A @ zero_zero_rat ) ) ) ).

% Ints_odd_less_0
thf(fact_446_Ints__odd__less__0,axiom,
    ! [A: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( ord_less_int @ ( plus_plus_int @ ( plus_plus_int @ one_one_int @ A ) @ A ) @ zero_zero_int )
        = ( ord_less_int @ A @ zero_zero_int ) ) ) ).

% Ints_odd_less_0
thf(fact_447_dbl__inc__def,axiom,
    ( neg_nu5831290666863070958nteger
    = ( ^ [X4: code_integer] : ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ X4 @ X4 ) @ one_one_Code_integer ) ) ) ).

% dbl_inc_def
thf(fact_448_dbl__inc__def,axiom,
    ( neg_nu5219082963157363817nc_rat
    = ( ^ [X4: rat] : ( plus_plus_rat @ ( plus_plus_rat @ X4 @ X4 ) @ one_one_rat ) ) ) ).

% dbl_inc_def
thf(fact_449_dbl__inc__def,axiom,
    ( neg_nu5851722552734809277nc_int
    = ( ^ [X4: int] : ( plus_plus_int @ ( plus_plus_int @ X4 @ X4 ) @ one_one_int ) ) ) ).

% dbl_inc_def
thf(fact_450_add__neg__numeral__special_I8_J,axiom,
    ( ( plus_plus_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int )
    = zero_zero_int ) ).

% add_neg_numeral_special(8)
thf(fact_451_add__neg__numeral__special_I8_J,axiom,
    ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ one_one_Code_integer )
    = zero_z3403309356797280102nteger ) ).

% add_neg_numeral_special(8)
thf(fact_452_add__neg__numeral__special_I8_J,axiom,
    ( ( plus_plus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ one_one_rat )
    = zero_zero_rat ) ).

% add_neg_numeral_special(8)
thf(fact_453_add__neg__numeral__special_I7_J,axiom,
    ( ( plus_plus_int @ one_one_int @ ( uminus_uminus_int @ one_one_int ) )
    = zero_zero_int ) ).

% add_neg_numeral_special(7)
thf(fact_454_add__neg__numeral__special_I7_J,axiom,
    ( ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = zero_z3403309356797280102nteger ) ).

% add_neg_numeral_special(7)
thf(fact_455_add__neg__numeral__special_I7_J,axiom,
    ( ( plus_plus_rat @ one_one_rat @ ( uminus_uminus_rat @ one_one_rat ) )
    = zero_zero_rat ) ).

% add_neg_numeral_special(7)
thf(fact_456_dbl__dec__simps_I3_J,axiom,
    ( ( neg_nu3811975205180677377ec_int @ one_one_int )
    = one_one_int ) ).

% dbl_dec_simps(3)
thf(fact_457_dbl__dec__simps_I3_J,axiom,
    ( ( neg_nu7757733837767384882nteger @ one_one_Code_integer )
    = one_one_Code_integer ) ).

% dbl_dec_simps(3)
thf(fact_458_dbl__dec__simps_I3_J,axiom,
    ( ( neg_nu3179335615603231917ec_rat @ one_one_rat )
    = one_one_rat ) ).

% dbl_dec_simps(3)
thf(fact_459_case__optionE,axiom,
    ! [P: $o,Q: produc3260487557148687353it_nat > $o,X: option3562590408128118217it_nat] :
      ( ( case_o3267218206291580230it_nat @ P @ Q @ X )
     => ( ( ( X = none_P2651198173097904984it_nat )
         => ~ P )
       => ~ ! [Y4: produc3260487557148687353it_nat] :
              ( ( X
                = ( some_P7913643980934408916it_nat @ Y4 ) )
             => ~ ( Q @ Y4 ) ) ) ) ).

% case_optionE
thf(fact_460_case__optionE,axiom,
    ! [P: $o,Q: produc8664842809031399944it_nat > $o,X: option8956607266484857688it_nat] :
      ( ( case_o2686588417244861013it_nat @ P @ Q @ X )
     => ( ( ( X = none_P9117596204409417319it_nat )
         => ~ P )
       => ~ ! [Y4: produc8664842809031399944it_nat] :
              ( ( X
                = ( some_P1914260805536162275it_nat @ Y4 ) )
             => ~ ( Q @ Y4 ) ) ) ) ).

% case_optionE
thf(fact_461_case__optionE,axiom,
    ! [P: $o,Q: num > $o,X: option_num] :
      ( ( case_option_o_num @ P @ Q @ X )
     => ( ( ( X = none_num )
         => ~ P )
       => ~ ! [Y4: num] :
              ( ( X
                = ( some_num @ Y4 ) )
             => ~ ( Q @ Y4 ) ) ) ) ).

% case_optionE
thf(fact_462_dbl__simps_I2_J,axiom,
    ( ( neg_numeral_dbl_int @ zero_zero_int )
    = zero_zero_int ) ).

% dbl_simps(2)
thf(fact_463_dbl__simps_I2_J,axiom,
    ( ( neg_nu8804712462038260780nteger @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% dbl_simps(2)
thf(fact_464_dbl__simps_I2_J,axiom,
    ( ( neg_numeral_dbl_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% dbl_simps(2)
thf(fact_465_option_Ocollapse,axiom,
    ! [Option: option3562590408128118217it_nat] :
      ( ( Option != none_P2651198173097904984it_nat )
     => ( ( some_P7913643980934408916it_nat @ ( the_Pr3616839707675578981it_nat @ Option ) )
        = Option ) ) ).

% option.collapse
thf(fact_466_option_Ocollapse,axiom,
    ! [Option: option8956607266484857688it_nat] :
      ( ( Option != none_P9117596204409417319it_nat )
     => ( ( some_P1914260805536162275it_nat @ ( the_Pr7776125533777466484it_nat @ Option ) )
        = Option ) ) ).

% option.collapse
thf(fact_467_option_Ocollapse,axiom,
    ! [Option: option_num] :
      ( ( Option != none_num )
     => ( ( some_num @ ( the_num @ Option ) )
        = Option ) ) ).

% option.collapse
thf(fact_468_curryI,axiom,
    ! [F: produc8763457246119570046nteger > $o,A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( F @ ( produc6137756002093451184nteger @ A @ B ) )
     => ( produc5457605928088077978eger_o @ F @ A @ B ) ) ).

% curryI
thf(fact_469_curryI,axiom,
    ! [F: produc989692990947075319atural > $o,A: produc4972180933644002618e_term > option6357759511663192854e_term,B: produc7822875418678951345atural] :
      ( ( F @ ( produc3831813291587773865atural @ A @ B ) )
     => ( produc6465694447285001697ural_o @ F @ A @ B ) ) ).

% curryI
thf(fact_470_curryI,axiom,
    ! [F: produc1908205239877642774nteger > $o,A: produc6241069584506657477e_term > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( F @ ( produc8603105652947943368nteger @ A @ B ) )
     => ( produc1217013493180205570eger_o @ F @ A @ B ) ) ).

% curryI
thf(fact_471_curryI,axiom,
    ! [F: produc2285326912895808259nt_int > $o,A: produc8551481072490612790e_term > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( F @ ( produc5700946648718959541nt_int @ A @ B ) )
     => ( produc730925184835016917_int_o @ F @ A @ B ) ) ).

% curryI
thf(fact_472_curryI,axiom,
    ! [F: produc7773217078559923341nt_int > $o,A: int > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( F @ ( produc4305682042979456191nt_int @ A @ B ) )
     => ( produc9098658269643458507_int_o @ F @ A @ B ) ) ).

% curryI
thf(fact_473_add_Oinverse__inverse,axiom,
    ! [A: int] :
      ( ( uminus_uminus_int @ ( uminus_uminus_int @ A ) )
      = A ) ).

% add.inverse_inverse
thf(fact_474_add_Oinverse__inverse,axiom,
    ! [A: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( uminus1351360451143612070nteger @ A ) )
      = A ) ).

% add.inverse_inverse
thf(fact_475_add_Oinverse__inverse,axiom,
    ! [A: rat] :
      ( ( uminus_uminus_rat @ ( uminus_uminus_rat @ A ) )
      = A ) ).

% add.inverse_inverse
thf(fact_476_neg__equal__iff__equal,axiom,
    ! [A: int,B: int] :
      ( ( ( uminus_uminus_int @ A )
        = ( uminus_uminus_int @ B ) )
      = ( A = B ) ) ).

% neg_equal_iff_equal
thf(fact_477_neg__equal__iff__equal,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( uminus1351360451143612070nteger @ A )
        = ( uminus1351360451143612070nteger @ B ) )
      = ( A = B ) ) ).

% neg_equal_iff_equal
thf(fact_478_neg__equal__iff__equal,axiom,
    ! [A: rat,B: rat] :
      ( ( ( uminus_uminus_rat @ A )
        = ( uminus_uminus_rat @ B ) )
      = ( A = B ) ) ).

% neg_equal_iff_equal
thf(fact_479_verit__minus__simplify_I4_J,axiom,
    ! [B: int] :
      ( ( uminus_uminus_int @ ( uminus_uminus_int @ B ) )
      = B ) ).

% verit_minus_simplify(4)
thf(fact_480_verit__minus__simplify_I4_J,axiom,
    ! [B: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( uminus1351360451143612070nteger @ B ) )
      = B ) ).

% verit_minus_simplify(4)
thf(fact_481_verit__minus__simplify_I4_J,axiom,
    ! [B: rat] :
      ( ( uminus_uminus_rat @ ( uminus_uminus_rat @ B ) )
      = B ) ).

% verit_minus_simplify(4)
thf(fact_482_less__nat__zero__code,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_nat_zero_code
thf(fact_483_neq0__conv,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% neq0_conv
thf(fact_484_bot__nat__0_Onot__eq__extremum,axiom,
    ! [A: nat] :
      ( ( A != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ A ) ) ).

% bot_nat_0.not_eq_extremum
thf(fact_485_nat__add__left__cancel__less,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% nat_add_left_cancel_less
thf(fact_486_not__gr__zero,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr_zero
thf(fact_487_add__less__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) )
      = ( ord_less_rat @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_488_add__less__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_489_add__less__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( ord_less_int @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_490_add__less__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) )
      = ( ord_less_rat @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_491_add__less__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_492_add__less__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( ord_less_int @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_493_neg__equal__zero,axiom,
    ! [A: int] :
      ( ( ( uminus_uminus_int @ A )
        = A )
      = ( A = zero_zero_int ) ) ).

% neg_equal_zero
thf(fact_494_neg__equal__zero,axiom,
    ! [A: code_integer] :
      ( ( ( uminus1351360451143612070nteger @ A )
        = A )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% neg_equal_zero
thf(fact_495_neg__equal__zero,axiom,
    ! [A: rat] :
      ( ( ( uminus_uminus_rat @ A )
        = A )
      = ( A = zero_zero_rat ) ) ).

% neg_equal_zero
thf(fact_496_equal__neg__zero,axiom,
    ! [A: int] :
      ( ( A
        = ( uminus_uminus_int @ A ) )
      = ( A = zero_zero_int ) ) ).

% equal_neg_zero
thf(fact_497_equal__neg__zero,axiom,
    ! [A: code_integer] :
      ( ( A
        = ( uminus1351360451143612070nteger @ A ) )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% equal_neg_zero
thf(fact_498_equal__neg__zero,axiom,
    ! [A: rat] :
      ( ( A
        = ( uminus_uminus_rat @ A ) )
      = ( A = zero_zero_rat ) ) ).

% equal_neg_zero
thf(fact_499_neg__equal__0__iff__equal,axiom,
    ! [A: int] :
      ( ( ( uminus_uminus_int @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% neg_equal_0_iff_equal
thf(fact_500_neg__equal__0__iff__equal,axiom,
    ! [A: code_integer] :
      ( ( ( uminus1351360451143612070nteger @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% neg_equal_0_iff_equal
thf(fact_501_neg__equal__0__iff__equal,axiom,
    ! [A: rat] :
      ( ( ( uminus_uminus_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% neg_equal_0_iff_equal
thf(fact_502_neg__0__equal__iff__equal,axiom,
    ! [A: int] :
      ( ( zero_zero_int
        = ( uminus_uminus_int @ A ) )
      = ( zero_zero_int = A ) ) ).

% neg_0_equal_iff_equal
thf(fact_503_neg__0__equal__iff__equal,axiom,
    ! [A: code_integer] :
      ( ( zero_z3403309356797280102nteger
        = ( uminus1351360451143612070nteger @ A ) )
      = ( zero_z3403309356797280102nteger = A ) ) ).

% neg_0_equal_iff_equal
thf(fact_504_neg__0__equal__iff__equal,axiom,
    ! [A: rat] :
      ( ( zero_zero_rat
        = ( uminus_uminus_rat @ A ) )
      = ( zero_zero_rat = A ) ) ).

% neg_0_equal_iff_equal
thf(fact_505_add_Oinverse__neutral,axiom,
    ( ( uminus_uminus_int @ zero_zero_int )
    = zero_zero_int ) ).

% add.inverse_neutral
thf(fact_506_add_Oinverse__neutral,axiom,
    ( ( uminus1351360451143612070nteger @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% add.inverse_neutral
thf(fact_507_add_Oinverse__neutral,axiom,
    ( ( uminus_uminus_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% add.inverse_neutral
thf(fact_508_neg__less__iff__less,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) )
      = ( ord_less_int @ A @ B ) ) ).

% neg_less_iff_less
thf(fact_509_neg__less__iff__less,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le6747313008572928689nteger @ A @ B ) ) ).

% neg_less_iff_less
thf(fact_510_neg__less__iff__less,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_rat @ A @ B ) ) ).

% neg_less_iff_less
thf(fact_511_minus__add__distrib,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ A ) @ ( uminus_uminus_int @ B ) ) ) ).

% minus_add_distrib
thf(fact_512_minus__add__distrib,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ ( uminus1351360451143612070nteger @ B ) ) ) ).

% minus_add_distrib
thf(fact_513_minus__add__distrib,axiom,
    ! [A: rat,B: rat] :
      ( ( uminus_uminus_rat @ ( plus_plus_rat @ A @ B ) )
      = ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ ( uminus_uminus_rat @ B ) ) ) ).

% minus_add_distrib
thf(fact_514_minus__add__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ ( plus_plus_int @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_515_minus__add__cancel,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_516_minus__add__cancel,axiom,
    ! [A: rat,B: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ ( plus_plus_rat @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_517_add__minus__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ A @ ( plus_plus_int @ ( uminus_uminus_int @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_518_add__minus__cancel,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_519_add__minus__cancel,axiom,
    ! [A: rat,B: rat] :
      ( ( plus_plus_rat @ A @ ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_520_add__gr__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        | ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% add_gr_0
thf(fact_521_less__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ one_one_nat )
      = ( N = zero_zero_nat ) ) ).

% less_one
thf(fact_522_zero__less__double__add__iff__zero__less__single__add,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ A ) )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% zero_less_double_add_iff_zero_less_single_add
thf(fact_523_zero__less__double__add__iff__zero__less__single__add,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ A ) )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% zero_less_double_add_iff_zero_less_single_add
thf(fact_524_zero__less__double__add__iff__zero__less__single__add,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ A ) )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% zero_less_double_add_iff_zero_less_single_add
thf(fact_525_double__add__less__zero__iff__single__add__less__zero,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ A ) @ zero_z3403309356797280102nteger )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% double_add_less_zero_iff_single_add_less_zero
thf(fact_526_double__add__less__zero__iff__single__add__less__zero,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ A @ A ) @ zero_zero_rat )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% double_add_less_zero_iff_single_add_less_zero
thf(fact_527_double__add__less__zero__iff__single__add__less__zero,axiom,
    ! [A: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ A ) @ zero_zero_int )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% double_add_less_zero_iff_single_add_less_zero
thf(fact_528_less__add__same__cancel2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( plus_p5714425477246183910nteger @ B @ A ) )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) ) ).

% less_add_same_cancel2
thf(fact_529_less__add__same__cancel2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ ( plus_p4538020629002901425atural @ B @ A ) )
      = ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B ) ) ).

% less_add_same_cancel2
thf(fact_530_less__add__same__cancel2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ ( plus_plus_rat @ B @ A ) )
      = ( ord_less_rat @ zero_zero_rat @ B ) ) ).

% less_add_same_cancel2
thf(fact_531_less__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel2
thf(fact_532_less__add__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ ( plus_plus_int @ B @ A ) )
      = ( ord_less_int @ zero_zero_int @ B ) ) ).

% less_add_same_cancel2
thf(fact_533_less__add__same__cancel1,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) ) ).

% less_add_same_cancel1
thf(fact_534_less__add__same__cancel1,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ ( plus_p4538020629002901425atural @ A @ B ) )
      = ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B ) ) ).

% less_add_same_cancel1
thf(fact_535_less__add__same__cancel1,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ ( plus_plus_rat @ A @ B ) )
      = ( ord_less_rat @ zero_zero_rat @ B ) ) ).

% less_add_same_cancel1
thf(fact_536_less__add__same__cancel1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel1
thf(fact_537_less__add__same__cancel1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ ( plus_plus_int @ A @ B ) )
      = ( ord_less_int @ zero_zero_int @ B ) ) ).

% less_add_same_cancel1
thf(fact_538_add__less__same__cancel2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% add_less_same_cancel2
thf(fact_539_add__less__same__cancel2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ A @ B ) @ B )
      = ( ord_le5570908160329646204atural @ A @ zero_z2226904508553997617atural ) ) ).

% add_less_same_cancel2
thf(fact_540_add__less__same__cancel2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ A @ B ) @ B )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% add_less_same_cancel2
thf(fact_541_add__less__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

% add_less_same_cancel2
thf(fact_542_add__less__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ B ) @ B )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% add_less_same_cancel2
thf(fact_543_add__less__same__cancel1,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ B @ A ) @ B )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% add_less_same_cancel1
thf(fact_544_add__less__same__cancel1,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ B @ A ) @ B )
      = ( ord_le5570908160329646204atural @ A @ zero_z2226904508553997617atural ) ) ).

% add_less_same_cancel1
thf(fact_545_add__less__same__cancel1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ B @ A ) @ B )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% add_less_same_cancel1
thf(fact_546_add__less__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

% add_less_same_cancel1
thf(fact_547_add__less__same__cancel1,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ ( plus_plus_int @ B @ A ) @ B )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% add_less_same_cancel1
thf(fact_548_less__neg__neg,axiom,
    ! [A: int] :
      ( ( ord_less_int @ A @ ( uminus_uminus_int @ A ) )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% less_neg_neg
thf(fact_549_less__neg__neg,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% less_neg_neg
thf(fact_550_less__neg__neg,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ A @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% less_neg_neg
thf(fact_551_neg__less__pos,axiom,
    ! [A: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ A ) @ A )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% neg_less_pos
thf(fact_552_neg__less__pos,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ A ) @ A )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% neg_less_pos
thf(fact_553_neg__less__pos,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ A ) @ A )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% neg_less_pos
thf(fact_554_neg__0__less__iff__less,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( uminus_uminus_int @ A ) )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% neg_0_less_iff_less
thf(fact_555_neg__0__less__iff__less,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% neg_0_less_iff_less
thf(fact_556_neg__0__less__iff__less,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% neg_0_less_iff_less
thf(fact_557_neg__less__0__iff__less,axiom,
    ! [A: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ A ) @ zero_zero_int )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% neg_less_0_iff_less
thf(fact_558_neg__less__0__iff__less,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ A ) @ zero_z3403309356797280102nteger )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% neg_less_0_iff_less
thf(fact_559_neg__less__0__iff__less,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ A ) @ zero_zero_rat )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% neg_less_0_iff_less
thf(fact_560_ab__left__minus,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ A )
      = zero_zero_int ) ).

% ab_left_minus
thf(fact_561_ab__left__minus,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ A )
      = zero_z3403309356797280102nteger ) ).

% ab_left_minus
thf(fact_562_ab__left__minus,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ A )
      = zero_zero_rat ) ).

% ab_left_minus
thf(fact_563_add_Oright__inverse,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ A @ ( uminus_uminus_int @ A ) )
      = zero_zero_int ) ).

% add.right_inverse
thf(fact_564_add_Oright__inverse,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ ( uminus1351360451143612070nteger @ A ) )
      = zero_z3403309356797280102nteger ) ).

% add.right_inverse
thf(fact_565_add_Oright__inverse,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ A @ ( uminus_uminus_rat @ A ) )
      = zero_zero_rat ) ).

% add.right_inverse
thf(fact_566_dbl__inc__simps_I4_J,axiom,
    ( ( neg_nu5851722552734809277nc_int @ ( uminus_uminus_int @ one_one_int ) )
    = ( uminus_uminus_int @ one_one_int ) ) ).

% dbl_inc_simps(4)
thf(fact_567_dbl__inc__simps_I4_J,axiom,
    ( ( neg_nu5831290666863070958nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% dbl_inc_simps(4)
thf(fact_568_dbl__inc__simps_I4_J,axiom,
    ( ( neg_nu5219082963157363817nc_rat @ ( uminus_uminus_rat @ one_one_rat ) )
    = ( uminus_uminus_rat @ one_one_rat ) ) ).

% dbl_inc_simps(4)
thf(fact_569_dbl__dec__simps_I2_J,axiom,
    ( ( neg_nu3811975205180677377ec_int @ zero_zero_int )
    = ( uminus_uminus_int @ one_one_int ) ) ).

% dbl_dec_simps(2)
thf(fact_570_dbl__dec__simps_I2_J,axiom,
    ( ( neg_nu7757733837767384882nteger @ zero_z3403309356797280102nteger )
    = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% dbl_dec_simps(2)
thf(fact_571_dbl__dec__simps_I2_J,axiom,
    ( ( neg_nu3179335615603231917ec_rat @ zero_zero_rat )
    = ( uminus_uminus_rat @ one_one_rat ) ) ).

% dbl_dec_simps(2)
thf(fact_572_equation__minus__iff,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( uminus_uminus_int @ B ) )
      = ( B
        = ( uminus_uminus_int @ A ) ) ) ).

% equation_minus_iff
thf(fact_573_equation__minus__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A
        = ( uminus1351360451143612070nteger @ B ) )
      = ( B
        = ( uminus1351360451143612070nteger @ A ) ) ) ).

% equation_minus_iff
thf(fact_574_equation__minus__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( A
        = ( uminus_uminus_rat @ B ) )
      = ( B
        = ( uminus_uminus_rat @ A ) ) ) ).

% equation_minus_iff
thf(fact_575_minus__equation__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( uminus_uminus_int @ A )
        = B )
      = ( ( uminus_uminus_int @ B )
        = A ) ) ).

% minus_equation_iff
thf(fact_576_minus__equation__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( uminus1351360451143612070nteger @ A )
        = B )
      = ( ( uminus1351360451143612070nteger @ B )
        = A ) ) ).

% minus_equation_iff
thf(fact_577_minus__equation__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( uminus_uminus_rat @ A )
        = B )
      = ( ( uminus_uminus_rat @ B )
        = A ) ) ).

% minus_equation_iff
thf(fact_578_less__minus__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ ( uminus_uminus_int @ B ) )
      = ( ord_less_int @ B @ ( uminus_uminus_int @ A ) ) ) ).

% less_minus_iff
thf(fact_579_less__minus__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( uminus1351360451143612070nteger @ B ) )
      = ( ord_le6747313008572928689nteger @ B @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% less_minus_iff
thf(fact_580_less__minus__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ ( uminus_uminus_rat @ B ) )
      = ( ord_less_rat @ B @ ( uminus_uminus_rat @ A ) ) ) ).

% less_minus_iff
thf(fact_581_minus__less__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ A ) @ B )
      = ( ord_less_int @ ( uminus_uminus_int @ B ) @ A ) ) ).

% minus_less_iff
thf(fact_582_minus__less__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
      = ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ B ) @ A ) ) ).

% minus_less_iff
thf(fact_583_minus__less__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ A ) @ B )
      = ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ A ) ) ).

% minus_less_iff
thf(fact_584_verit__comp__simplify1_I1_J,axiom,
    ! [A: literal] :
      ~ ( ord_less_literal @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_585_verit__comp__simplify1_I1_J,axiom,
    ! [A: rat] :
      ~ ( ord_less_rat @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_586_verit__comp__simplify1_I1_J,axiom,
    ! [A: num] :
      ~ ( ord_less_num @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_587_verit__comp__simplify1_I1_J,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_588_verit__comp__simplify1_I1_J,axiom,
    ! [A: int] :
      ~ ( ord_less_int @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_589_verit__negate__coefficient_I3_J,axiom,
    ! [A: int,B: int] :
      ( ( A = B )
     => ( ( uminus_uminus_int @ A )
        = ( uminus_uminus_int @ B ) ) ) ).

% verit_negate_coefficient(3)
thf(fact_590_verit__negate__coefficient_I3_J,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A = B )
     => ( ( uminus1351360451143612070nteger @ A )
        = ( uminus1351360451143612070nteger @ B ) ) ) ).

% verit_negate_coefficient(3)
thf(fact_591_verit__negate__coefficient_I3_J,axiom,
    ! [A: rat,B: rat] :
      ( ( A = B )
     => ( ( uminus_uminus_rat @ A )
        = ( uminus_uminus_rat @ B ) ) ) ).

% verit_negate_coefficient(3)
thf(fact_592_verit__negate__coefficient_I2_J,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% verit_negate_coefficient(2)
thf(fact_593_verit__negate__coefficient_I2_J,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% verit_negate_coefficient(2)
thf(fact_594_verit__negate__coefficient_I2_J,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) ) ) ).

% verit_negate_coefficient(2)
thf(fact_595_linorder__neqE__linordered__idom,axiom,
    ! [X: rat,Y3: rat] :
      ( ( X != Y3 )
     => ( ~ ( ord_less_rat @ X @ Y3 )
       => ( ord_less_rat @ Y3 @ X ) ) ) ).

% linorder_neqE_linordered_idom
thf(fact_596_linorder__neqE__linordered__idom,axiom,
    ! [X: int,Y3: int] :
      ( ( X != Y3 )
     => ( ~ ( ord_less_int @ X @ Y3 )
       => ( ord_less_int @ Y3 @ X ) ) ) ).

% linorder_neqE_linordered_idom
thf(fact_597_less__minus__one__simps_I2_J,axiom,
    ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int ).

% less_minus_one_simps(2)
thf(fact_598_less__minus__one__simps_I2_J,axiom,
    ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ one_one_Code_integer ).

% less_minus_one_simps(2)
thf(fact_599_less__minus__one__simps_I2_J,axiom,
    ord_less_rat @ ( uminus_uminus_rat @ one_one_rat ) @ one_one_rat ).

% less_minus_one_simps(2)
thf(fact_600_less__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_int @ one_one_int @ ( uminus_uminus_int @ one_one_int ) ) ).

% less_minus_one_simps(4)
thf(fact_601_less__minus__one__simps_I4_J,axiom,
    ~ ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% less_minus_one_simps(4)
thf(fact_602_less__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_rat @ one_one_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% less_minus_one_simps(4)
thf(fact_603_option_Ocase__eq__if,axiom,
    ( case_option_int_num
    = ( ^ [F1: int,F22: num > int,Option2: option_num] : ( if_int @ ( Option2 = none_num ) @ F1 @ ( F22 @ ( the_num @ Option2 ) ) ) ) ) ).

% option.case_eq_if
thf(fact_604_option_Ocase__eq__if,axiom,
    ( case_o6005452278849405969um_num
    = ( ^ [F1: option_num,F22: num > option_num,Option2: option_num] : ( if_option_num @ ( Option2 = none_num ) @ F1 @ ( F22 @ ( the_num @ Option2 ) ) ) ) ) ).

% option.case_eq_if
thf(fact_605_option_Ocase__eq__if,axiom,
    ( case_option_num_num
    = ( ^ [F1: num,F22: num > num,Option2: option_num] : ( if_num @ ( Option2 = none_num ) @ F1 @ ( F22 @ ( the_num @ Option2 ) ) ) ) ) ).

% option.case_eq_if
thf(fact_606_option_Ocase__distrib,axiom,
    ! [H: int > int,F12: int,F23: num > int,Option: option_num] :
      ( ( H @ ( case_option_int_num @ F12 @ F23 @ Option ) )
      = ( case_option_int_num @ ( H @ F12 )
        @ ^ [X4: num] : ( H @ ( F23 @ X4 ) )
        @ Option ) ) ).

% option.case_distrib
thf(fact_607_option_Ocase__distrib,axiom,
    ! [H: int > option_num,F12: int,F23: num > int,Option: option_num] :
      ( ( H @ ( case_option_int_num @ F12 @ F23 @ Option ) )
      = ( case_o6005452278849405969um_num @ ( H @ F12 )
        @ ^ [X4: num] : ( H @ ( F23 @ X4 ) )
        @ Option ) ) ).

% option.case_distrib
thf(fact_608_option_Ocase__distrib,axiom,
    ! [H: int > num,F12: int,F23: num > int,Option: option_num] :
      ( ( H @ ( case_option_int_num @ F12 @ F23 @ Option ) )
      = ( case_option_num_num @ ( H @ F12 )
        @ ^ [X4: num] : ( H @ ( F23 @ X4 ) )
        @ Option ) ) ).

% option.case_distrib
thf(fact_609_option_Ocase__distrib,axiom,
    ! [H: option_num > int,F12: option_num,F23: num > option_num,Option: option_num] :
      ( ( H @ ( case_o6005452278849405969um_num @ F12 @ F23 @ Option ) )
      = ( case_option_int_num @ ( H @ F12 )
        @ ^ [X4: num] : ( H @ ( F23 @ X4 ) )
        @ Option ) ) ).

% option.case_distrib
thf(fact_610_option_Ocase__distrib,axiom,
    ! [H: option_num > option_num,F12: option_num,F23: num > option_num,Option: option_num] :
      ( ( H @ ( case_o6005452278849405969um_num @ F12 @ F23 @ Option ) )
      = ( case_o6005452278849405969um_num @ ( H @ F12 )
        @ ^ [X4: num] : ( H @ ( F23 @ X4 ) )
        @ Option ) ) ).

% option.case_distrib
thf(fact_611_option_Ocase__distrib,axiom,
    ! [H: option_num > num,F12: option_num,F23: num > option_num,Option: option_num] :
      ( ( H @ ( case_o6005452278849405969um_num @ F12 @ F23 @ Option ) )
      = ( case_option_num_num @ ( H @ F12 )
        @ ^ [X4: num] : ( H @ ( F23 @ X4 ) )
        @ Option ) ) ).

% option.case_distrib
thf(fact_612_option_Ocase__distrib,axiom,
    ! [H: num > int,F12: num,F23: num > num,Option: option_num] :
      ( ( H @ ( case_option_num_num @ F12 @ F23 @ Option ) )
      = ( case_option_int_num @ ( H @ F12 )
        @ ^ [X4: num] : ( H @ ( F23 @ X4 ) )
        @ Option ) ) ).

% option.case_distrib
thf(fact_613_option_Ocase__distrib,axiom,
    ! [H: num > option_num,F12: num,F23: num > num,Option: option_num] :
      ( ( H @ ( case_option_num_num @ F12 @ F23 @ Option ) )
      = ( case_o6005452278849405969um_num @ ( H @ F12 )
        @ ^ [X4: num] : ( H @ ( F23 @ X4 ) )
        @ Option ) ) ).

% option.case_distrib
thf(fact_614_option_Ocase__distrib,axiom,
    ! [H: num > num,F12: num,F23: num > num,Option: option_num] :
      ( ( H @ ( case_option_num_num @ F12 @ F23 @ Option ) )
      = ( case_option_num_num @ ( H @ F12 )
        @ ^ [X4: num] : ( H @ ( F23 @ X4 ) )
        @ Option ) ) ).

% option.case_distrib
thf(fact_615_less__minus__one__simps_I1_J,axiom,
    ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ zero_zero_int ).

% less_minus_one_simps(1)
thf(fact_616_less__minus__one__simps_I1_J,axiom,
    ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ zero_z3403309356797280102nteger ).

% less_minus_one_simps(1)
thf(fact_617_less__minus__one__simps_I1_J,axiom,
    ord_less_rat @ ( uminus_uminus_rat @ one_one_rat ) @ zero_zero_rat ).

% less_minus_one_simps(1)
thf(fact_618_less__minus__one__simps_I3_J,axiom,
    ~ ( ord_less_int @ zero_zero_int @ ( uminus_uminus_int @ one_one_int ) ) ).

% less_minus_one_simps(3)
thf(fact_619_less__minus__one__simps_I3_J,axiom,
    ~ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% less_minus_one_simps(3)
thf(fact_620_less__minus__one__simps_I3_J,axiom,
    ~ ( ord_less_rat @ zero_zero_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% less_minus_one_simps(3)
thf(fact_621_add_Oinverse__distrib__swap,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_622_add_Oinverse__distrib__swap,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_623_add_Oinverse__distrib__swap,axiom,
    ! [A: rat,B: rat] :
      ( ( uminus_uminus_rat @ ( plus_plus_rat @ A @ B ) )
      = ( plus_plus_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_624_group__cancel_Oneg1,axiom,
    ! [A3: int,K: int,A: int] :
      ( ( A3
        = ( plus_plus_int @ K @ A ) )
     => ( ( uminus_uminus_int @ A3 )
        = ( plus_plus_int @ ( uminus_uminus_int @ K ) @ ( uminus_uminus_int @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_625_group__cancel_Oneg1,axiom,
    ! [A3: code_integer,K: code_integer,A: code_integer] :
      ( ( A3
        = ( plus_p5714425477246183910nteger @ K @ A ) )
     => ( ( uminus1351360451143612070nteger @ A3 )
        = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ K ) @ ( uminus1351360451143612070nteger @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_626_group__cancel_Oneg1,axiom,
    ! [A3: rat,K: rat,A: rat] :
      ( ( A3
        = ( plus_plus_rat @ K @ A ) )
     => ( ( uminus_uminus_rat @ A3 )
        = ( plus_plus_rat @ ( uminus_uminus_rat @ K ) @ ( uminus_uminus_rat @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_627_is__num__normalize_I8_J,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_628_is__num__normalize_I8_J,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_629_is__num__normalize_I8_J,axiom,
    ! [A: rat,B: rat] :
      ( ( uminus_uminus_rat @ ( plus_plus_rat @ A @ B ) )
      = ( plus_plus_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_630_one__neq__neg__one,axiom,
    ( one_one_int
   != ( uminus_uminus_int @ one_one_int ) ) ).

% one_neq_neg_one
thf(fact_631_one__neq__neg__one,axiom,
    ( one_one_Code_integer
   != ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% one_neq_neg_one
thf(fact_632_one__neq__neg__one,axiom,
    ( one_one_rat
   != ( uminus_uminus_rat @ one_one_rat ) ) ).

% one_neq_neg_one
thf(fact_633_zero__less__iff__neq__zero,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( N != zero_zero_nat ) ) ).

% zero_less_iff_neq_zero
thf(fact_634_gr__implies__not__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not_zero
thf(fact_635_not__less__zero,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less_zero
thf(fact_636_gr__zeroI,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr_zeroI
thf(fact_637_less__numeral__extra_I3_J,axiom,
    ~ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger ) ).

% less_numeral_extra(3)
thf(fact_638_less__numeral__extra_I3_J,axiom,
    ~ ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ zero_z2226904508553997617atural ) ).

% less_numeral_extra(3)
thf(fact_639_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_rat @ zero_zero_rat @ zero_zero_rat ) ).

% less_numeral_extra(3)
thf(fact_640_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% less_numeral_extra(3)
thf(fact_641_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_int @ zero_zero_int @ zero_zero_int ) ).

% less_numeral_extra(3)
thf(fact_642_add__less__imp__less__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) )
     => ( ord_less_rat @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_643_add__less__imp__less__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_644_add__less__imp__less__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
     => ( ord_less_int @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_645_add__less__imp__less__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) )
     => ( ord_less_rat @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_646_add__less__imp__less__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_647_add__less__imp__less__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
     => ( ord_less_int @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_648_add__strict__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_649_add__strict__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_650_add__strict__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_651_add__strict__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_652_add__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_653_add__strict__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_654_add__strict__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ C @ D )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_655_add__strict__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_656_add__strict__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_657_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_rat @ I @ J )
        & ( K = L ) )
     => ( ord_less_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_658_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( K = L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_659_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_int @ I @ J )
        & ( K = L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_660_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( I = J )
        & ( ord_less_rat @ K @ L ) )
     => ( ord_less_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_661_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_662_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( I = J )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_663_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_rat @ I @ J )
        & ( ord_less_rat @ K @ L ) )
     => ( ord_less_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_664_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_665_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_int @ I @ J )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_666_less__numeral__extra_I4_J,axiom,
    ~ ( ord_le6747313008572928689nteger @ one_one_Code_integer @ one_one_Code_integer ) ).

% less_numeral_extra(4)
thf(fact_667_less__numeral__extra_I4_J,axiom,
    ~ ( ord_le5570908160329646204atural @ one_one_Code_natural @ one_one_Code_natural ) ).

% less_numeral_extra(4)
thf(fact_668_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_rat @ one_one_rat @ one_one_rat ) ).

% less_numeral_extra(4)
thf(fact_669_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).

% less_numeral_extra(4)
thf(fact_670_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_int @ one_one_int @ one_one_int ) ).

% less_numeral_extra(4)
thf(fact_671_infinite__descent0,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( ~ ( P @ N2 )
             => ? [M3: nat] :
                  ( ( ord_less_nat @ M3 @ N2 )
                  & ~ ( P @ M3 ) ) ) )
       => ( P @ N ) ) ) ).

% infinite_descent0
thf(fact_672_gr__implies__not0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not0
thf(fact_673_less__zeroE,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_zeroE
thf(fact_674_not__less0,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less0
thf(fact_675_not__gr0,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr0
thf(fact_676_gr0I,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr0I
thf(fact_677_bot__nat__0_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ zero_zero_nat ) ).

% bot_nat_0.extremum_strict
thf(fact_678_less__add__eq__less,axiom,
    ! [K: nat,L: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ K @ L )
     => ( ( ( plus_plus_nat @ M @ L )
          = ( plus_plus_nat @ K @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% less_add_eq_less
thf(fact_679_trans__less__add2,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_less_add2
thf(fact_680_trans__less__add1,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_less_add1
thf(fact_681_add__less__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_less_mono1
thf(fact_682_not__add__less2,axiom,
    ! [J: nat,I: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J @ I ) @ I ) ).

% not_add_less2
thf(fact_683_not__add__less1,axiom,
    ! [I: nat,J: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ I ) ).

% not_add_less1
thf(fact_684_add__less__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ K @ L )
       => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_less_mono
thf(fact_685_add__lessD1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ K )
     => ( ord_less_nat @ I @ K ) ) ).

% add_lessD1
thf(fact_686_uminus__unit__def,axiom,
    ( uminus2952777764628376836t_unit
    = ( ^ [Uu2: product_unit] : product_Unity ) ) ).

% uminus_unit_def
thf(fact_687_option_Osplit__sel,axiom,
    ! [P: int > $o,F12: int,F23: num > int,Option: option_num] :
      ( ( P @ ( case_option_int_num @ F12 @ F23 @ Option ) )
      = ( ( ( Option = none_num )
         => ( P @ F12 ) )
        & ( ( Option
            = ( some_num @ ( the_num @ Option ) ) )
         => ( P @ ( F23 @ ( the_num @ Option ) ) ) ) ) ) ).

% option.split_sel
thf(fact_688_option_Osplit__sel,axiom,
    ! [P: option_num > $o,F12: option_num,F23: num > option_num,Option: option_num] :
      ( ( P @ ( case_o6005452278849405969um_num @ F12 @ F23 @ Option ) )
      = ( ( ( Option = none_num )
         => ( P @ F12 ) )
        & ( ( Option
            = ( some_num @ ( the_num @ Option ) ) )
         => ( P @ ( F23 @ ( the_num @ Option ) ) ) ) ) ) ).

% option.split_sel
thf(fact_689_option_Osplit__sel,axiom,
    ! [P: num > $o,F12: num,F23: num > num,Option: option_num] :
      ( ( P @ ( case_option_num_num @ F12 @ F23 @ Option ) )
      = ( ( ( Option = none_num )
         => ( P @ F12 ) )
        & ( ( Option
            = ( some_num @ ( the_num @ Option ) ) )
         => ( P @ ( F23 @ ( the_num @ Option ) ) ) ) ) ) ).

% option.split_sel
thf(fact_690_option_Osplit__sel__asm,axiom,
    ! [P: int > $o,F12: int,F23: num > int,Option: option_num] :
      ( ( P @ ( case_option_int_num @ F12 @ F23 @ Option ) )
      = ( ~ ( ( ( Option = none_num )
              & ~ ( P @ F12 ) )
            | ( ( Option
                = ( some_num @ ( the_num @ Option ) ) )
              & ~ ( P @ ( F23 @ ( the_num @ Option ) ) ) ) ) ) ) ).

% option.split_sel_asm
thf(fact_691_option_Osplit__sel__asm,axiom,
    ! [P: option_num > $o,F12: option_num,F23: num > option_num,Option: option_num] :
      ( ( P @ ( case_o6005452278849405969um_num @ F12 @ F23 @ Option ) )
      = ( ~ ( ( ( Option = none_num )
              & ~ ( P @ F12 ) )
            | ( ( Option
                = ( some_num @ ( the_num @ Option ) ) )
              & ~ ( P @ ( F23 @ ( the_num @ Option ) ) ) ) ) ) ) ).

% option.split_sel_asm
thf(fact_692_option_Osplit__sel__asm,axiom,
    ! [P: num > $o,F12: num,F23: num > num,Option: option_num] :
      ( ( P @ ( case_option_num_num @ F12 @ F23 @ Option ) )
      = ( ~ ( ( ( Option = none_num )
              & ~ ( P @ F12 ) )
            | ( ( Option
                = ( some_num @ ( the_num @ Option ) ) )
              & ~ ( P @ ( F23 @ ( the_num @ Option ) ) ) ) ) ) ) ).

% option.split_sel_asm
thf(fact_693_Ints__minus,axiom,
    ! [A: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( member_int @ ( uminus_uminus_int @ A ) @ ring_1_Ints_int ) ) ).

% Ints_minus
thf(fact_694_Ints__minus,axiom,
    ! [A: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( member_Code_integer @ ( uminus1351360451143612070nteger @ A ) @ ring_11222124179247155820nteger ) ) ).

% Ints_minus
thf(fact_695_Ints__minus,axiom,
    ! [A: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( member_rat @ ( uminus_uminus_rat @ A ) @ ring_1_Ints_rat ) ) ).

% Ints_minus
thf(fact_696_minus__in__Ints__iff,axiom,
    ! [X: int] :
      ( ( member_int @ ( uminus_uminus_int @ X ) @ ring_1_Ints_int )
      = ( member_int @ X @ ring_1_Ints_int ) ) ).

% minus_in_Ints_iff
thf(fact_697_minus__in__Ints__iff,axiom,
    ! [X: code_integer] :
      ( ( member_Code_integer @ ( uminus1351360451143612070nteger @ X ) @ ring_11222124179247155820nteger )
      = ( member_Code_integer @ X @ ring_11222124179247155820nteger ) ) ).

% minus_in_Ints_iff
thf(fact_698_minus__in__Ints__iff,axiom,
    ! [X: rat] :
      ( ( member_rat @ ( uminus_uminus_rat @ X ) @ ring_1_Ints_rat )
      = ( member_rat @ X @ ring_1_Ints_rat ) ) ).

% minus_in_Ints_iff
thf(fact_699_option_Oexpand,axiom,
    ! [Option: option_num,Option3: option_num] :
      ( ( ( Option = none_num )
        = ( Option3 = none_num ) )
     => ( ( ( Option != none_num )
         => ( ( Option3 != none_num )
           => ( ( the_num @ Option )
              = ( the_num @ Option3 ) ) ) )
       => ( Option = Option3 ) ) ) ).

% option.expand
thf(fact_700_option_Oexpand,axiom,
    ! [Option: option3562590408128118217it_nat,Option3: option3562590408128118217it_nat] :
      ( ( ( Option = none_P2651198173097904984it_nat )
        = ( Option3 = none_P2651198173097904984it_nat ) )
     => ( ( ( Option != none_P2651198173097904984it_nat )
         => ( ( Option3 != none_P2651198173097904984it_nat )
           => ( ( the_Pr3616839707675578981it_nat @ Option )
              = ( the_Pr3616839707675578981it_nat @ Option3 ) ) ) )
       => ( Option = Option3 ) ) ) ).

% option.expand
thf(fact_701_option_Osel,axiom,
    ! [X2: produc8664842809031399944it_nat] :
      ( ( the_Pr7776125533777466484it_nat @ ( some_P1914260805536162275it_nat @ X2 ) )
      = X2 ) ).

% option.sel
thf(fact_702_option_Osel,axiom,
    ! [X2: num] :
      ( ( the_num @ ( some_num @ X2 ) )
      = X2 ) ).

% option.sel
thf(fact_703_option_Osimps_I4_J,axiom,
    ! [F12: int,F23: num > int] :
      ( ( case_option_int_num @ F12 @ F23 @ none_num )
      = F12 ) ).

% option.simps(4)
thf(fact_704_option_Osimps_I4_J,axiom,
    ! [F12: option_num,F23: num > option_num] :
      ( ( case_o6005452278849405969um_num @ F12 @ F23 @ none_num )
      = F12 ) ).

% option.simps(4)
thf(fact_705_option_Osimps_I4_J,axiom,
    ! [F12: num,F23: num > num] :
      ( ( case_option_num_num @ F12 @ F23 @ none_num )
      = F12 ) ).

% option.simps(4)
thf(fact_706_option_Osimps_I5_J,axiom,
    ! [F12: int,F23: num > int,X2: num] :
      ( ( case_option_int_num @ F12 @ F23 @ ( some_num @ X2 ) )
      = ( F23 @ X2 ) ) ).

% option.simps(5)
thf(fact_707_option_Osimps_I5_J,axiom,
    ! [F12: option_num,F23: num > option_num,X2: num] :
      ( ( case_o6005452278849405969um_num @ F12 @ F23 @ ( some_num @ X2 ) )
      = ( F23 @ X2 ) ) ).

% option.simps(5)
thf(fact_708_option_Osimps_I5_J,axiom,
    ! [F12: num,F23: num > num,X2: num] :
      ( ( case_option_num_num @ F12 @ F23 @ ( some_num @ X2 ) )
      = ( F23 @ X2 ) ) ).

% option.simps(5)
thf(fact_709_curryE,axiom,
    ! [F: produc8763457246119570046nteger > $o,A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( produc5457605928088077978eger_o @ F @ A @ B )
     => ( F @ ( produc6137756002093451184nteger @ A @ B ) ) ) ).

% curryE
thf(fact_710_curryE,axiom,
    ! [F: produc989692990947075319atural > $o,A: produc4972180933644002618e_term > option6357759511663192854e_term,B: produc7822875418678951345atural] :
      ( ( produc6465694447285001697ural_o @ F @ A @ B )
     => ( F @ ( produc3831813291587773865atural @ A @ B ) ) ) ).

% curryE
thf(fact_711_curryE,axiom,
    ! [F: produc1908205239877642774nteger > $o,A: produc6241069584506657477e_term > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( produc1217013493180205570eger_o @ F @ A @ B )
     => ( F @ ( produc8603105652947943368nteger @ A @ B ) ) ) ).

% curryE
thf(fact_712_curryE,axiom,
    ! [F: produc2285326912895808259nt_int > $o,A: produc8551481072490612790e_term > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( produc730925184835016917_int_o @ F @ A @ B )
     => ( F @ ( produc5700946648718959541nt_int @ A @ B ) ) ) ).

% curryE
thf(fact_713_curryE,axiom,
    ! [F: produc7773217078559923341nt_int > $o,A: int > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( produc9098658269643458507_int_o @ F @ A @ B )
     => ( F @ ( produc4305682042979456191nt_int @ A @ B ) ) ) ).

% curryE
thf(fact_714_curryD,axiom,
    ! [F: produc8763457246119570046nteger > $o,A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( produc5457605928088077978eger_o @ F @ A @ B )
     => ( F @ ( produc6137756002093451184nteger @ A @ B ) ) ) ).

% curryD
thf(fact_715_curryD,axiom,
    ! [F: produc989692990947075319atural > $o,A: produc4972180933644002618e_term > option6357759511663192854e_term,B: produc7822875418678951345atural] :
      ( ( produc6465694447285001697ural_o @ F @ A @ B )
     => ( F @ ( produc3831813291587773865atural @ A @ B ) ) ) ).

% curryD
thf(fact_716_curryD,axiom,
    ! [F: produc1908205239877642774nteger > $o,A: produc6241069584506657477e_term > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( produc1217013493180205570eger_o @ F @ A @ B )
     => ( F @ ( produc8603105652947943368nteger @ A @ B ) ) ) ).

% curryD
thf(fact_717_curryD,axiom,
    ! [F: produc2285326912895808259nt_int > $o,A: produc8551481072490612790e_term > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( produc730925184835016917_int_o @ F @ A @ B )
     => ( F @ ( produc5700946648718959541nt_int @ A @ B ) ) ) ).

% curryD
thf(fact_718_curryD,axiom,
    ! [F: produc7773217078559923341nt_int > $o,A: int > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( produc9098658269643458507_int_o @ F @ A @ B )
     => ( F @ ( produc4305682042979456191nt_int @ A @ B ) ) ) ).

% curryD
thf(fact_719_option_Odisc__eq__case_I1_J,axiom,
    ! [Option: option_num] :
      ( ( Option = none_num )
      = ( case_option_o_num @ $true
        @ ^ [Uu: num] : $false
        @ Option ) ) ).

% option.disc_eq_case(1)
thf(fact_720_option_Odisc__eq__case_I1_J,axiom,
    ! [Option: option3562590408128118217it_nat] :
      ( ( Option = none_P2651198173097904984it_nat )
      = ( case_o3267218206291580230it_nat @ $true
        @ ^ [Uu: produc3260487557148687353it_nat] : $false
        @ Option ) ) ).

% option.disc_eq_case(1)
thf(fact_721_option_Odisc__eq__case_I2_J,axiom,
    ! [Option: option_num] :
      ( ( Option != none_num )
      = ( case_option_o_num @ $false
        @ ^ [Uu: num] : $true
        @ Option ) ) ).

% option.disc_eq_case(2)
thf(fact_722_option_Odisc__eq__case_I2_J,axiom,
    ! [Option: option3562590408128118217it_nat] :
      ( ( Option != none_P2651198173097904984it_nat )
      = ( case_o3267218206291580230it_nat @ $false
        @ ^ [Uu: produc3260487557148687353it_nat] : $true
        @ Option ) ) ).

% option.disc_eq_case(2)
thf(fact_723_neg__eq__iff__add__eq__0,axiom,
    ! [A: int,B: int] :
      ( ( ( uminus_uminus_int @ A )
        = B )
      = ( ( plus_plus_int @ A @ B )
        = zero_zero_int ) ) ).

% neg_eq_iff_add_eq_0
thf(fact_724_neg__eq__iff__add__eq__0,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( uminus1351360451143612070nteger @ A )
        = B )
      = ( ( plus_p5714425477246183910nteger @ A @ B )
        = zero_z3403309356797280102nteger ) ) ).

% neg_eq_iff_add_eq_0
thf(fact_725_neg__eq__iff__add__eq__0,axiom,
    ! [A: rat,B: rat] :
      ( ( ( uminus_uminus_rat @ A )
        = B )
      = ( ( plus_plus_rat @ A @ B )
        = zero_zero_rat ) ) ).

% neg_eq_iff_add_eq_0
thf(fact_726_eq__neg__iff__add__eq__0,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( uminus_uminus_int @ B ) )
      = ( ( plus_plus_int @ A @ B )
        = zero_zero_int ) ) ).

% eq_neg_iff_add_eq_0
thf(fact_727_eq__neg__iff__add__eq__0,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A
        = ( uminus1351360451143612070nteger @ B ) )
      = ( ( plus_p5714425477246183910nteger @ A @ B )
        = zero_z3403309356797280102nteger ) ) ).

% eq_neg_iff_add_eq_0
thf(fact_728_eq__neg__iff__add__eq__0,axiom,
    ! [A: rat,B: rat] :
      ( ( A
        = ( uminus_uminus_rat @ B ) )
      = ( ( plus_plus_rat @ A @ B )
        = zero_zero_rat ) ) ).

% eq_neg_iff_add_eq_0
thf(fact_729_add_Oinverse__unique,axiom,
    ! [A: int,B: int] :
      ( ( ( plus_plus_int @ A @ B )
        = zero_zero_int )
     => ( ( uminus_uminus_int @ A )
        = B ) ) ).

% add.inverse_unique
thf(fact_730_add_Oinverse__unique,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ B )
        = zero_z3403309356797280102nteger )
     => ( ( uminus1351360451143612070nteger @ A )
        = B ) ) ).

% add.inverse_unique
thf(fact_731_add_Oinverse__unique,axiom,
    ! [A: rat,B: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = zero_zero_rat )
     => ( ( uminus_uminus_rat @ A )
        = B ) ) ).

% add.inverse_unique
thf(fact_732_ab__group__add__class_Oab__left__minus,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ A )
      = zero_zero_int ) ).

% ab_group_add_class.ab_left_minus
thf(fact_733_ab__group__add__class_Oab__left__minus,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ A )
      = zero_z3403309356797280102nteger ) ).

% ab_group_add_class.ab_left_minus
thf(fact_734_ab__group__add__class_Oab__left__minus,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ A )
      = zero_zero_rat ) ).

% ab_group_add_class.ab_left_minus
thf(fact_735_add__eq__0__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( plus_plus_int @ A @ B )
        = zero_zero_int )
      = ( B
        = ( uminus_uminus_int @ A ) ) ) ).

% add_eq_0_iff
thf(fact_736_add__eq__0__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ B )
        = zero_z3403309356797280102nteger )
      = ( B
        = ( uminus1351360451143612070nteger @ A ) ) ) ).

% add_eq_0_iff
thf(fact_737_add__eq__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = zero_zero_rat )
      = ( B
        = ( uminus_uminus_rat @ A ) ) ) ).

% add_eq_0_iff
thf(fact_738_zero__neq__neg__one,axiom,
    ( zero_zero_int
   != ( uminus_uminus_int @ one_one_int ) ) ).

% zero_neq_neg_one
thf(fact_739_zero__neq__neg__one,axiom,
    ( zero_z3403309356797280102nteger
   != ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% zero_neq_neg_one
thf(fact_740_zero__neq__neg__one,axiom,
    ( zero_zero_rat
   != ( uminus_uminus_rat @ one_one_rat ) ) ).

% zero_neq_neg_one
thf(fact_741_add__less__zeroD,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ X @ Y3 ) @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ X @ zero_z3403309356797280102nteger )
        | ( ord_le6747313008572928689nteger @ Y3 @ zero_z3403309356797280102nteger ) ) ) ).

% add_less_zeroD
thf(fact_742_add__less__zeroD,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ X @ Y3 ) @ zero_zero_rat )
     => ( ( ord_less_rat @ X @ zero_zero_rat )
        | ( ord_less_rat @ Y3 @ zero_zero_rat ) ) ) ).

% add_less_zeroD
thf(fact_743_add__less__zeroD,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_int @ ( plus_plus_int @ X @ Y3 ) @ zero_zero_int )
     => ( ( ord_less_int @ X @ zero_zero_int )
        | ( ord_less_int @ Y3 @ zero_zero_int ) ) ) ).

% add_less_zeroD
thf(fact_744_pos__add__strict,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ord_le6747313008572928689nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_745_pos__add__strict,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ B @ C )
       => ( ord_le5570908160329646204atural @ B @ ( plus_p4538020629002901425atural @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_746_pos__add__strict,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ B @ C )
       => ( ord_less_rat @ B @ ( plus_plus_rat @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_747_pos__add__strict,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_748_pos__add__strict,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ C )
       => ( ord_less_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_749_canonically__ordered__monoid__add__class_OlessE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ! [C2: nat] :
            ( ( B
              = ( plus_plus_nat @ A @ C2 ) )
           => ( C2 = zero_zero_nat ) ) ) ).

% canonically_ordered_monoid_add_class.lessE
thf(fact_750_add__pos__pos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_751_add__pos__pos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_752_add__pos__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_753_add__pos__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_754_add__pos__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_755_add__neg__neg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% add_neg_neg
thf(fact_756_add__neg__neg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le5570908160329646204atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% add_neg_neg
thf(fact_757_add__neg__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% add_neg_neg
thf(fact_758_add__neg__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_neg
thf(fact_759_add__neg__neg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_neg_neg
thf(fact_760_not__one__less__zero,axiom,
    ~ ( ord_le6747313008572928689nteger @ one_one_Code_integer @ zero_z3403309356797280102nteger ) ).

% not_one_less_zero
thf(fact_761_not__one__less__zero,axiom,
    ~ ( ord_le5570908160329646204atural @ one_one_Code_natural @ zero_z2226904508553997617atural ) ).

% not_one_less_zero
thf(fact_762_not__one__less__zero,axiom,
    ~ ( ord_less_rat @ one_one_rat @ zero_zero_rat ) ).

% not_one_less_zero
thf(fact_763_not__one__less__zero,axiom,
    ~ ( ord_less_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_less_zero
thf(fact_764_not__one__less__zero,axiom,
    ~ ( ord_less_int @ one_one_int @ zero_zero_int ) ).

% not_one_less_zero
thf(fact_765_zero__less__one,axiom,
    ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ one_one_Code_integer ).

% zero_less_one
thf(fact_766_zero__less__one,axiom,
    ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ one_one_Code_natural ).

% zero_less_one
thf(fact_767_zero__less__one,axiom,
    ord_less_rat @ zero_zero_rat @ one_one_rat ).

% zero_less_one
thf(fact_768_zero__less__one,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one
thf(fact_769_zero__less__one,axiom,
    ord_less_int @ zero_zero_int @ one_one_int ).

% zero_less_one
thf(fact_770_less__numeral__extra_I1_J,axiom,
    ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ one_one_Code_integer ).

% less_numeral_extra(1)
thf(fact_771_less__numeral__extra_I1_J,axiom,
    ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ one_one_Code_natural ).

% less_numeral_extra(1)
thf(fact_772_less__numeral__extra_I1_J,axiom,
    ord_less_rat @ zero_zero_rat @ one_one_rat ).

% less_numeral_extra(1)
thf(fact_773_less__numeral__extra_I1_J,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% less_numeral_extra(1)
thf(fact_774_less__numeral__extra_I1_J,axiom,
    ord_less_int @ zero_zero_int @ one_one_int ).

% less_numeral_extra(1)
thf(fact_775_add__mono1,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ one_one_Code_integer ) @ ( plus_p5714425477246183910nteger @ B @ one_one_Code_integer ) ) ) ).

% add_mono1
thf(fact_776_add__mono1,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ A @ one_one_Code_natural ) @ ( plus_p4538020629002901425atural @ B @ one_one_Code_natural ) ) ) ).

% add_mono1
thf(fact_777_add__mono1,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( plus_plus_rat @ B @ one_one_rat ) ) ) ).

% add_mono1
thf(fact_778_add__mono1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ ( plus_plus_nat @ B @ one_one_nat ) ) ) ).

% add_mono1
thf(fact_779_add__mono1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ A @ one_one_int ) @ ( plus_plus_int @ B @ one_one_int ) ) ) ).

% add_mono1
thf(fact_780_less__add__one,axiom,
    ! [A: code_integer] : ( ord_le6747313008572928689nteger @ A @ ( plus_p5714425477246183910nteger @ A @ one_one_Code_integer ) ) ).

% less_add_one
thf(fact_781_less__add__one,axiom,
    ! [A: code_natural] : ( ord_le5570908160329646204atural @ A @ ( plus_p4538020629002901425atural @ A @ one_one_Code_natural ) ) ).

% less_add_one
thf(fact_782_less__add__one,axiom,
    ! [A: rat] : ( ord_less_rat @ A @ ( plus_plus_rat @ A @ one_one_rat ) ) ).

% less_add_one
thf(fact_783_less__add__one,axiom,
    ! [A: nat] : ( ord_less_nat @ A @ ( plus_plus_nat @ A @ one_one_nat ) ) ).

% less_add_one
thf(fact_784_less__add__one,axiom,
    ! [A: int] : ( ord_less_int @ A @ ( plus_plus_int @ A @ one_one_int ) ) ).

% less_add_one
thf(fact_785_less__imp__add__positive,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ? [K2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K2 )
          & ( ( plus_plus_nat @ I @ K2 )
            = J ) ) ) ).

% less_imp_add_positive
thf(fact_786_dbl__def,axiom,
    ( neg_numeral_dbl_rat
    = ( ^ [X4: rat] : ( plus_plus_rat @ X4 @ X4 ) ) ) ).

% dbl_def
thf(fact_787_dbl__def,axiom,
    ( neg_numeral_dbl_int
    = ( ^ [X4: int] : ( plus_plus_int @ X4 @ X4 ) ) ) ).

% dbl_def
thf(fact_788_option_Oexhaust__sel,axiom,
    ! [Option: option3562590408128118217it_nat] :
      ( ( Option != none_P2651198173097904984it_nat )
     => ( Option
        = ( some_P7913643980934408916it_nat @ ( the_Pr3616839707675578981it_nat @ Option ) ) ) ) ).

% option.exhaust_sel
thf(fact_789_option_Oexhaust__sel,axiom,
    ! [Option: option8956607266484857688it_nat] :
      ( ( Option != none_P9117596204409417319it_nat )
     => ( Option
        = ( some_P1914260805536162275it_nat @ ( the_Pr7776125533777466484it_nat @ Option ) ) ) ) ).

% option.exhaust_sel
thf(fact_790_option_Oexhaust__sel,axiom,
    ! [Option: option_num] :
      ( ( Option != none_num )
     => ( Option
        = ( some_num @ ( the_num @ Option ) ) ) ) ).

% option.exhaust_sel
thf(fact_791_zero__less__two,axiom,
    ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ one_one_Code_integer ) ).

% zero_less_two
thf(fact_792_zero__less__two,axiom,
    ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ one_one_Code_natural @ one_one_Code_natural ) ).

% zero_less_two
thf(fact_793_zero__less__two,axiom,
    ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ one_one_rat @ one_one_rat ) ).

% zero_less_two
thf(fact_794_zero__less__two,axiom,
    ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ one_one_nat @ one_one_nat ) ).

% zero_less_two
thf(fact_795_zero__less__two,axiom,
    ord_less_int @ zero_zero_int @ ( plus_plus_int @ one_one_int @ one_one_int ) ).

% zero_less_two
thf(fact_796_disjE__realizer2,axiom,
    ! [P: $o,Q: num > $o,X: option_num,R5: int > $o,F: int,G: num > int] :
      ( ( case_option_o_num @ P @ Q @ X )
     => ( ( P
         => ( R5 @ F ) )
       => ( ! [Q3: num] :
              ( ( Q @ Q3 )
             => ( R5 @ ( G @ Q3 ) ) )
         => ( R5 @ ( case_option_int_num @ F @ G @ X ) ) ) ) ) ).

% disjE_realizer2
thf(fact_797_disjE__realizer2,axiom,
    ! [P: $o,Q: num > $o,X: option_num,R5: option_num > $o,F: option_num,G: num > option_num] :
      ( ( case_option_o_num @ P @ Q @ X )
     => ( ( P
         => ( R5 @ F ) )
       => ( ! [Q3: num] :
              ( ( Q @ Q3 )
             => ( R5 @ ( G @ Q3 ) ) )
         => ( R5 @ ( case_o6005452278849405969um_num @ F @ G @ X ) ) ) ) ) ).

% disjE_realizer2
thf(fact_798_disjE__realizer2,axiom,
    ! [P: $o,Q: num > $o,X: option_num,R5: num > $o,F: num,G: num > num] :
      ( ( case_option_o_num @ P @ Q @ X )
     => ( ( P
         => ( R5 @ F ) )
       => ( ! [Q3: num] :
              ( ( Q @ Q3 )
             => ( R5 @ ( G @ Q3 ) ) )
         => ( R5 @ ( case_option_num_num @ F @ G @ X ) ) ) ) ) ).

% disjE_realizer2
thf(fact_799_sgn__neg,axiom,
    ! [A: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( sgn_sgn_int @ A )
        = ( uminus_uminus_int @ one_one_int ) ) ) ).

% sgn_neg
thf(fact_800_sgn__neg,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( sgn_sgn_Code_integer @ A )
        = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ) ).

% sgn_neg
thf(fact_801_sgn__neg,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( sgn_sgn_rat @ A )
        = ( uminus_uminus_rat @ one_one_rat ) ) ) ).

% sgn_neg
thf(fact_802_of__nat__code,axiom,
    ( semiri4939895301339042750nteger
    = ( ^ [N5: nat] :
          ( semiri4055485073559036834nteger
          @ ^ [I2: code_integer] : ( plus_p5714425477246183910nteger @ I2 @ one_one_Code_integer )
          @ N5
          @ zero_z3403309356797280102nteger ) ) ) ).

% of_nat_code
thf(fact_803_of__nat__code,axiom,
    ( semiri681578069525770553at_rat
    = ( ^ [N5: nat] :
          ( semiri7787848453975740701ux_rat
          @ ^ [I2: rat] : ( plus_plus_rat @ I2 @ one_one_rat )
          @ N5
          @ zero_zero_rat ) ) ) ).

% of_nat_code
thf(fact_804_of__nat__code,axiom,
    ( semiri3763490453095760265atural
    = ( ^ [N5: nat] :
          ( semiri2879080225315754349atural
          @ ^ [I2: code_natural] : ( plus_p4538020629002901425atural @ I2 @ one_one_Code_natural )
          @ N5
          @ zero_z2226904508553997617atural ) ) ) ).

% of_nat_code
thf(fact_805_of__nat__code,axiom,
    ( semiri1314217659103216013at_int
    = ( ^ [N5: nat] :
          ( semiri8420488043553186161ux_int
          @ ^ [I2: int] : ( plus_plus_int @ I2 @ one_one_int )
          @ N5
          @ zero_zero_int ) ) ) ).

% of_nat_code
thf(fact_806_of__nat__code,axiom,
    ( semiri1316708129612266289at_nat
    = ( ^ [N5: nat] :
          ( semiri8422978514062236437ux_nat
          @ ^ [I2: nat] : ( plus_plus_nat @ I2 @ one_one_nat )
          @ N5
          @ zero_zero_nat ) ) ) ).

% of_nat_code
thf(fact_807_add_Ogroup__axioms,axiom,
    group_int @ plus_plus_int @ zero_zero_int @ uminus_uminus_int ).

% add.group_axioms
thf(fact_808_add_Ogroup__axioms,axiom,
    group_Code_integer @ plus_p5714425477246183910nteger @ zero_z3403309356797280102nteger @ uminus1351360451143612070nteger ).

% add.group_axioms
thf(fact_809_add_Ogroup__axioms,axiom,
    group_rat @ plus_plus_rat @ zero_zero_rat @ uminus_uminus_rat ).

% add.group_axioms
thf(fact_810_sgn__1__neg,axiom,
    ! [A: int] :
      ( ( ( sgn_sgn_int @ A )
        = ( uminus_uminus_int @ one_one_int ) )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% sgn_1_neg
thf(fact_811_sgn__1__neg,axiom,
    ! [A: code_integer] :
      ( ( ( sgn_sgn_Code_integer @ A )
        = ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% sgn_1_neg
thf(fact_812_sgn__1__neg,axiom,
    ! [A: rat] :
      ( ( ( sgn_sgn_rat @ A )
        = ( uminus_uminus_rat @ one_one_rat ) )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% sgn_1_neg
thf(fact_813_sgn__if,axiom,
    ( sgn_sgn_int
    = ( ^ [X4: int] : ( if_int @ ( X4 = zero_zero_int ) @ zero_zero_int @ ( if_int @ ( ord_less_int @ zero_zero_int @ X4 ) @ one_one_int @ ( uminus_uminus_int @ one_one_int ) ) ) ) ) ).

% sgn_if
thf(fact_814_sgn__if,axiom,
    ( sgn_sgn_Code_integer
    = ( ^ [X4: code_integer] : ( if_Code_integer @ ( X4 = zero_z3403309356797280102nteger ) @ zero_z3403309356797280102nteger @ ( if_Code_integer @ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ X4 ) @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ) ) ) ).

% sgn_if
thf(fact_815_sgn__if,axiom,
    ( sgn_sgn_rat
    = ( ^ [X4: rat] : ( if_rat @ ( X4 = zero_zero_rat ) @ zero_zero_rat @ ( if_rat @ ( ord_less_rat @ zero_zero_rat @ X4 ) @ one_one_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ) ) ) ).

% sgn_if
thf(fact_816_is__num_Osimps,axiom,
    ( neg_nu7441568979088483369um_int
    = ( ^ [A4: int] :
          ( ( A4 = one_one_int )
          | ? [X4: int] :
              ( ( A4
                = ( uminus_uminus_int @ X4 ) )
              & ( neg_nu7441568979088483369um_int @ X4 ) )
          | ? [X4: int,Y: int] :
              ( ( A4
                = ( plus_plus_int @ X4 @ Y ) )
              & ( neg_nu7441568979088483369um_int @ X4 )
              & ( neg_nu7441568979088483369um_int @ Y ) ) ) ) ) ).

% is_num.simps
thf(fact_817_is__num_Osimps,axiom,
    ( neg_nu2435721316971906650nteger
    = ( ^ [A4: code_integer] :
          ( ( A4 = one_one_Code_integer )
          | ? [X4: code_integer] :
              ( ( A4
                = ( uminus1351360451143612070nteger @ X4 ) )
              & ( neg_nu2435721316971906650nteger @ X4 ) )
          | ? [X4: code_integer,Y: code_integer] :
              ( ( A4
                = ( plus_p5714425477246183910nteger @ X4 @ Y ) )
              & ( neg_nu2435721316971906650nteger @ X4 )
              & ( neg_nu2435721316971906650nteger @ Y ) ) ) ) ) ).

% is_num.simps
thf(fact_818_is__num_Osimps,axiom,
    ( neg_nu6808929389511037909um_rat
    = ( ^ [A4: rat] :
          ( ( A4 = one_one_rat )
          | ? [X4: rat] :
              ( ( A4
                = ( uminus_uminus_rat @ X4 ) )
              & ( neg_nu6808929389511037909um_rat @ X4 ) )
          | ? [X4: rat,Y: rat] :
              ( ( A4
                = ( plus_plus_rat @ X4 @ Y ) )
              & ( neg_nu6808929389511037909um_rat @ X4 )
              & ( neg_nu6808929389511037909um_rat @ Y ) ) ) ) ) ).

% is_num.simps
thf(fact_819_is__num_Ocases,axiom,
    ! [A: int] :
      ( ( neg_nu7441568979088483369um_int @ A )
     => ( ( A != one_one_int )
       => ( ! [X5: int] :
              ( ( A
                = ( uminus_uminus_int @ X5 ) )
             => ~ ( neg_nu7441568979088483369um_int @ X5 ) )
         => ~ ! [X5: int,Y4: int] :
                ( ( A
                  = ( plus_plus_int @ X5 @ Y4 ) )
               => ( ( neg_nu7441568979088483369um_int @ X5 )
                 => ~ ( neg_nu7441568979088483369um_int @ Y4 ) ) ) ) ) ) ).

% is_num.cases
thf(fact_820_is__num_Ocases,axiom,
    ! [A: code_integer] :
      ( ( neg_nu2435721316971906650nteger @ A )
     => ( ( A != one_one_Code_integer )
       => ( ! [X5: code_integer] :
              ( ( A
                = ( uminus1351360451143612070nteger @ X5 ) )
             => ~ ( neg_nu2435721316971906650nteger @ X5 ) )
         => ~ ! [X5: code_integer,Y4: code_integer] :
                ( ( A
                  = ( plus_p5714425477246183910nteger @ X5 @ Y4 ) )
               => ( ( neg_nu2435721316971906650nteger @ X5 )
                 => ~ ( neg_nu2435721316971906650nteger @ Y4 ) ) ) ) ) ) ).

% is_num.cases
thf(fact_821_is__num_Ocases,axiom,
    ! [A: rat] :
      ( ( neg_nu6808929389511037909um_rat @ A )
     => ( ( A != one_one_rat )
       => ( ! [X5: rat] :
              ( ( A
                = ( uminus_uminus_rat @ X5 ) )
             => ~ ( neg_nu6808929389511037909um_rat @ X5 ) )
         => ~ ! [X5: rat,Y4: rat] :
                ( ( A
                  = ( plus_plus_rat @ X5 @ Y4 ) )
               => ( ( neg_nu6808929389511037909um_rat @ X5 )
                 => ~ ( neg_nu6808929389511037909um_rat @ Y4 ) ) ) ) ) ) ).

% is_num.cases
thf(fact_822_Ints__nonzero__abs__less1,axiom,
    ! [X: code_integer] :
      ( ( member_Code_integer @ X @ ring_11222124179247155820nteger )
     => ( ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ X ) @ one_one_Code_integer )
       => ( X = zero_z3403309356797280102nteger ) ) ) ).

% Ints_nonzero_abs_less1
thf(fact_823_Ints__nonzero__abs__less1,axiom,
    ! [X: rat] :
      ( ( member_rat @ X @ ring_1_Ints_rat )
     => ( ( ord_less_rat @ ( abs_abs_rat @ X ) @ one_one_rat )
       => ( X = zero_zero_rat ) ) ) ).

% Ints_nonzero_abs_less1
thf(fact_824_Ints__nonzero__abs__less1,axiom,
    ! [X: int] :
      ( ( member_int @ X @ ring_1_Ints_int )
     => ( ( ord_less_int @ ( abs_abs_int @ X ) @ one_one_int )
       => ( X = zero_zero_int ) ) ) ).

% Ints_nonzero_abs_less1
thf(fact_825_negative__eq__positive,axiom,
    ! [N: nat,M: nat] :
      ( ( ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) )
        = ( semiri1314217659103216013at_int @ M ) )
      = ( ( N = zero_zero_nat )
        & ( M = zero_zero_nat ) ) ) ).

% negative_eq_positive
thf(fact_826_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = ( semiri1314217659103216013at_int @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_827_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri1316708129612266289at_nat @ M )
        = ( semiri1316708129612266289at_nat @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_828_abs__abs,axiom,
    ! [A: int] :
      ( ( abs_abs_int @ ( abs_abs_int @ A ) )
      = ( abs_abs_int @ A ) ) ).

% abs_abs
thf(fact_829_abs__abs,axiom,
    ! [A: code_integer] :
      ( ( abs_abs_Code_integer @ ( abs_abs_Code_integer @ A ) )
      = ( abs_abs_Code_integer @ A ) ) ).

% abs_abs
thf(fact_830_abs__abs,axiom,
    ! [A: rat] :
      ( ( abs_abs_rat @ ( abs_abs_rat @ A ) )
      = ( abs_abs_rat @ A ) ) ).

% abs_abs
thf(fact_831_abs__idempotent,axiom,
    ! [A: int] :
      ( ( abs_abs_int @ ( abs_abs_int @ A ) )
      = ( abs_abs_int @ A ) ) ).

% abs_idempotent
thf(fact_832_abs__idempotent,axiom,
    ! [A: code_integer] :
      ( ( abs_abs_Code_integer @ ( abs_abs_Code_integer @ A ) )
      = ( abs_abs_Code_integer @ A ) ) ).

% abs_idempotent
thf(fact_833_abs__idempotent,axiom,
    ! [A: rat] :
      ( ( abs_abs_rat @ ( abs_abs_rat @ A ) )
      = ( abs_abs_rat @ A ) ) ).

% abs_idempotent
thf(fact_834_sgn__sgn,axiom,
    ! [A: int] :
      ( ( sgn_sgn_int @ ( sgn_sgn_int @ A ) )
      = ( sgn_sgn_int @ A ) ) ).

% sgn_sgn
thf(fact_835_sgn__sgn,axiom,
    ! [A: code_integer] :
      ( ( sgn_sgn_Code_integer @ ( sgn_sgn_Code_integer @ A ) )
      = ( sgn_sgn_Code_integer @ A ) ) ).

% sgn_sgn
thf(fact_836_sgn__sgn,axiom,
    ! [A: rat] :
      ( ( sgn_sgn_rat @ ( sgn_sgn_rat @ A ) )
      = ( sgn_sgn_rat @ A ) ) ).

% sgn_sgn
thf(fact_837_abs__0__eq,axiom,
    ! [A: int] :
      ( ( zero_zero_int
        = ( abs_abs_int @ A ) )
      = ( A = zero_zero_int ) ) ).

% abs_0_eq
thf(fact_838_abs__0__eq,axiom,
    ! [A: code_integer] :
      ( ( zero_z3403309356797280102nteger
        = ( abs_abs_Code_integer @ A ) )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% abs_0_eq
thf(fact_839_abs__0__eq,axiom,
    ! [A: rat] :
      ( ( zero_zero_rat
        = ( abs_abs_rat @ A ) )
      = ( A = zero_zero_rat ) ) ).

% abs_0_eq
thf(fact_840_abs__eq__0,axiom,
    ! [A: int] :
      ( ( ( abs_abs_int @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% abs_eq_0
thf(fact_841_abs__eq__0,axiom,
    ! [A: code_integer] :
      ( ( ( abs_abs_Code_integer @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% abs_eq_0
thf(fact_842_abs__eq__0,axiom,
    ! [A: rat] :
      ( ( ( abs_abs_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% abs_eq_0
thf(fact_843_abs__zero,axiom,
    ( ( abs_abs_int @ zero_zero_int )
    = zero_zero_int ) ).

% abs_zero
thf(fact_844_abs__zero,axiom,
    ( ( abs_abs_Code_integer @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% abs_zero
thf(fact_845_abs__zero,axiom,
    ( ( abs_abs_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% abs_zero
thf(fact_846_abs__0,axiom,
    ( ( abs_abs_int @ zero_zero_int )
    = zero_zero_int ) ).

% abs_0
thf(fact_847_abs__0,axiom,
    ( ( abs_abs_Code_integer @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% abs_0
thf(fact_848_abs__0,axiom,
    ( ( abs_abs_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% abs_0
thf(fact_849_abs__add__abs,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( abs_abs_Code_integer @ ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) )
      = ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) ).

% abs_add_abs
thf(fact_850_abs__add__abs,axiom,
    ! [A: rat,B: rat] :
      ( ( abs_abs_rat @ ( plus_plus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) )
      = ( plus_plus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ).

% abs_add_abs
thf(fact_851_abs__add__abs,axiom,
    ! [A: int,B: int] :
      ( ( abs_abs_int @ ( plus_plus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) )
      = ( plus_plus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) ).

% abs_add_abs
thf(fact_852_abs__1,axiom,
    ( ( abs_abs_int @ one_one_int )
    = one_one_int ) ).

% abs_1
thf(fact_853_abs__1,axiom,
    ( ( abs_abs_Code_integer @ one_one_Code_integer )
    = one_one_Code_integer ) ).

% abs_1
thf(fact_854_abs__1,axiom,
    ( ( abs_abs_rat @ one_one_rat )
    = one_one_rat ) ).

% abs_1
thf(fact_855_abs__minus,axiom,
    ! [A: int] :
      ( ( abs_abs_int @ ( uminus_uminus_int @ A ) )
      = ( abs_abs_int @ A ) ) ).

% abs_minus
thf(fact_856_abs__minus,axiom,
    ! [A: code_integer] :
      ( ( abs_abs_Code_integer @ ( uminus1351360451143612070nteger @ A ) )
      = ( abs_abs_Code_integer @ A ) ) ).

% abs_minus
thf(fact_857_abs__minus,axiom,
    ! [A: rat] :
      ( ( abs_abs_rat @ ( uminus_uminus_rat @ A ) )
      = ( abs_abs_rat @ A ) ) ).

% abs_minus
thf(fact_858_abs__minus__cancel,axiom,
    ! [A: int] :
      ( ( abs_abs_int @ ( uminus_uminus_int @ A ) )
      = ( abs_abs_int @ A ) ) ).

% abs_minus_cancel
thf(fact_859_abs__minus__cancel,axiom,
    ! [A: code_integer] :
      ( ( abs_abs_Code_integer @ ( uminus1351360451143612070nteger @ A ) )
      = ( abs_abs_Code_integer @ A ) ) ).

% abs_minus_cancel
thf(fact_860_abs__minus__cancel,axiom,
    ! [A: rat] :
      ( ( abs_abs_rat @ ( uminus_uminus_rat @ A ) )
      = ( abs_abs_rat @ A ) ) ).

% abs_minus_cancel
thf(fact_861_abs__of__nat,axiom,
    ! [N: nat] :
      ( ( abs_abs_Code_integer @ ( semiri4939895301339042750nteger @ N ) )
      = ( semiri4939895301339042750nteger @ N ) ) ).

% abs_of_nat
thf(fact_862_abs__of__nat,axiom,
    ! [N: nat] :
      ( ( abs_abs_rat @ ( semiri681578069525770553at_rat @ N ) )
      = ( semiri681578069525770553at_rat @ N ) ) ).

% abs_of_nat
thf(fact_863_abs__of__nat,axiom,
    ! [N: nat] :
      ( ( abs_abs_int @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri1314217659103216013at_int @ N ) ) ).

% abs_of_nat
thf(fact_864_sgn__0,axiom,
    ( ( sgn_sgn_int @ zero_zero_int )
    = zero_zero_int ) ).

% sgn_0
thf(fact_865_sgn__0,axiom,
    ( ( sgn_sgn_Code_integer @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% sgn_0
thf(fact_866_sgn__0,axiom,
    ( ( sgn_sgn_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% sgn_0
thf(fact_867_sgn__1,axiom,
    ( ( sgn_sgn_int @ one_one_int )
    = one_one_int ) ).

% sgn_1
thf(fact_868_sgn__1,axiom,
    ( ( sgn_sgn_Code_integer @ one_one_Code_integer )
    = one_one_Code_integer ) ).

% sgn_1
thf(fact_869_sgn__1,axiom,
    ( ( sgn_sgn_rat @ one_one_rat )
    = one_one_rat ) ).

% sgn_1
thf(fact_870_sgn__minus,axiom,
    ! [A: int] :
      ( ( sgn_sgn_int @ ( uminus_uminus_int @ A ) )
      = ( uminus_uminus_int @ ( sgn_sgn_int @ A ) ) ) ).

% sgn_minus
thf(fact_871_sgn__minus,axiom,
    ! [A: code_integer] :
      ( ( sgn_sgn_Code_integer @ ( uminus1351360451143612070nteger @ A ) )
      = ( uminus1351360451143612070nteger @ ( sgn_sgn_Code_integer @ A ) ) ) ).

% sgn_minus
thf(fact_872_sgn__minus,axiom,
    ! [A: rat] :
      ( ( sgn_sgn_rat @ ( uminus_uminus_rat @ A ) )
      = ( uminus_uminus_rat @ ( sgn_sgn_rat @ A ) ) ) ).

% sgn_minus
thf(fact_873_zero__less__abs__iff,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( abs_abs_Code_integer @ A ) )
      = ( A != zero_z3403309356797280102nteger ) ) ).

% zero_less_abs_iff
thf(fact_874_zero__less__abs__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( abs_abs_rat @ A ) )
      = ( A != zero_zero_rat ) ) ).

% zero_less_abs_iff
thf(fact_875_zero__less__abs__iff,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( abs_abs_int @ A ) )
      = ( A != zero_zero_int ) ) ).

% zero_less_abs_iff
thf(fact_876_of__nat__0,axiom,
    ( ( semiri4939895301339042750nteger @ zero_zero_nat )
    = zero_z3403309356797280102nteger ) ).

% of_nat_0
thf(fact_877_of__nat__0,axiom,
    ( ( semiri681578069525770553at_rat @ zero_zero_nat )
    = zero_zero_rat ) ).

% of_nat_0
thf(fact_878_of__nat__0,axiom,
    ( ( semiri3763490453095760265atural @ zero_zero_nat )
    = zero_z2226904508553997617atural ) ).

% of_nat_0
thf(fact_879_of__nat__0,axiom,
    ( ( semiri1314217659103216013at_int @ zero_zero_nat )
    = zero_zero_int ) ).

% of_nat_0
thf(fact_880_of__nat__0,axiom,
    ( ( semiri1316708129612266289at_nat @ zero_zero_nat )
    = zero_zero_nat ) ).

% of_nat_0
thf(fact_881_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_z3403309356797280102nteger
        = ( semiri4939895301339042750nteger @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_882_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_zero_rat
        = ( semiri681578069525770553at_rat @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_883_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_z2226904508553997617atural
        = ( semiri3763490453095760265atural @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_884_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_zero_int
        = ( semiri1314217659103216013at_int @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_885_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_zero_nat
        = ( semiri1316708129612266289at_nat @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_886_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri4939895301339042750nteger @ M )
        = zero_z3403309356797280102nteger )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_887_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri681578069525770553at_rat @ M )
        = zero_zero_rat )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_888_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri3763490453095760265atural @ M )
        = zero_z2226904508553997617atural )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_889_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = zero_zero_int )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_890_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri1316708129612266289at_nat @ M )
        = zero_zero_nat )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_891_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_892_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_893_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_894_abs__neg__one,axiom,
    ( ( abs_abs_int @ ( uminus_uminus_int @ one_one_int ) )
    = one_one_int ) ).

% abs_neg_one
thf(fact_895_abs__neg__one,axiom,
    ( ( abs_abs_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = one_one_Code_integer ) ).

% abs_neg_one
thf(fact_896_abs__neg__one,axiom,
    ( ( abs_abs_rat @ ( uminus_uminus_rat @ one_one_rat ) )
    = one_one_rat ) ).

% abs_neg_one
thf(fact_897_of__nat__add,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri681578069525770553at_rat @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) ) ) ).

% of_nat_add
thf(fact_898_of__nat__add,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1314217659103216013at_int @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% of_nat_add
thf(fact_899_of__nat__add,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1316708129612266289at_nat @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ).

% of_nat_add
thf(fact_900_sgn__less,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( sgn_sgn_Code_integer @ A ) @ zero_z3403309356797280102nteger )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% sgn_less
thf(fact_901_sgn__less,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( sgn_sgn_rat @ A ) @ zero_zero_rat )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% sgn_less
thf(fact_902_sgn__less,axiom,
    ! [A: int] :
      ( ( ord_less_int @ ( sgn_sgn_int @ A ) @ zero_zero_int )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% sgn_less
thf(fact_903_sgn__greater,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( sgn_sgn_Code_integer @ A ) )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% sgn_greater
thf(fact_904_sgn__greater,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( sgn_sgn_rat @ A ) )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% sgn_greater
thf(fact_905_sgn__greater,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( sgn_sgn_int @ A ) )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% sgn_greater
thf(fact_906_of__nat__1,axiom,
    ( ( semiri4939895301339042750nteger @ one_one_nat )
    = one_one_Code_integer ) ).

% of_nat_1
thf(fact_907_of__nat__1,axiom,
    ( ( semiri681578069525770553at_rat @ one_one_nat )
    = one_one_rat ) ).

% of_nat_1
thf(fact_908_of__nat__1,axiom,
    ( ( semiri3763490453095760265atural @ one_one_nat )
    = one_one_Code_natural ) ).

% of_nat_1
thf(fact_909_of__nat__1,axiom,
    ( ( semiri1314217659103216013at_int @ one_one_nat )
    = one_one_int ) ).

% of_nat_1
thf(fact_910_of__nat__1,axiom,
    ( ( semiri1316708129612266289at_nat @ one_one_nat )
    = one_one_nat ) ).

% of_nat_1
thf(fact_911_of__nat__1__eq__iff,axiom,
    ! [N: nat] :
      ( ( one_one_Code_integer
        = ( semiri4939895301339042750nteger @ N ) )
      = ( N = one_one_nat ) ) ).

% of_nat_1_eq_iff
thf(fact_912_of__nat__1__eq__iff,axiom,
    ! [N: nat] :
      ( ( one_one_rat
        = ( semiri681578069525770553at_rat @ N ) )
      = ( N = one_one_nat ) ) ).

% of_nat_1_eq_iff
thf(fact_913_of__nat__1__eq__iff,axiom,
    ! [N: nat] :
      ( ( one_one_Code_natural
        = ( semiri3763490453095760265atural @ N ) )
      = ( N = one_one_nat ) ) ).

% of_nat_1_eq_iff
thf(fact_914_of__nat__1__eq__iff,axiom,
    ! [N: nat] :
      ( ( one_one_int
        = ( semiri1314217659103216013at_int @ N ) )
      = ( N = one_one_nat ) ) ).

% of_nat_1_eq_iff
thf(fact_915_of__nat__1__eq__iff,axiom,
    ! [N: nat] :
      ( ( one_one_nat
        = ( semiri1316708129612266289at_nat @ N ) )
      = ( N = one_one_nat ) ) ).

% of_nat_1_eq_iff
thf(fact_916_of__nat__eq__1__iff,axiom,
    ! [N: nat] :
      ( ( ( semiri4939895301339042750nteger @ N )
        = one_one_Code_integer )
      = ( N = one_one_nat ) ) ).

% of_nat_eq_1_iff
thf(fact_917_of__nat__eq__1__iff,axiom,
    ! [N: nat] :
      ( ( ( semiri681578069525770553at_rat @ N )
        = one_one_rat )
      = ( N = one_one_nat ) ) ).

% of_nat_eq_1_iff
thf(fact_918_of__nat__eq__1__iff,axiom,
    ! [N: nat] :
      ( ( ( semiri3763490453095760265atural @ N )
        = one_one_Code_natural )
      = ( N = one_one_nat ) ) ).

% of_nat_eq_1_iff
thf(fact_919_of__nat__eq__1__iff,axiom,
    ! [N: nat] :
      ( ( ( semiri1314217659103216013at_int @ N )
        = one_one_int )
      = ( N = one_one_nat ) ) ).

% of_nat_eq_1_iff
thf(fact_920_of__nat__eq__1__iff,axiom,
    ! [N: nat] :
      ( ( ( semiri1316708129612266289at_nat @ N )
        = one_one_nat )
      = ( N = one_one_nat ) ) ).

% of_nat_eq_1_iff
thf(fact_921_sgn__pos,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( sgn_sgn_Code_integer @ A )
        = one_one_Code_integer ) ) ).

% sgn_pos
thf(fact_922_sgn__pos,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( sgn_sgn_rat @ A )
        = one_one_rat ) ) ).

% sgn_pos
thf(fact_923_sgn__pos,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( sgn_sgn_int @ A )
        = one_one_int ) ) ).

% sgn_pos
thf(fact_924_abs__sgn__eq__1,axiom,
    ! [A: int] :
      ( ( A != zero_zero_int )
     => ( ( abs_abs_int @ ( sgn_sgn_int @ A ) )
        = one_one_int ) ) ).

% abs_sgn_eq_1
thf(fact_925_abs__sgn__eq__1,axiom,
    ! [A: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( abs_abs_Code_integer @ ( sgn_sgn_Code_integer @ A ) )
        = one_one_Code_integer ) ) ).

% abs_sgn_eq_1
thf(fact_926_abs__sgn__eq__1,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( abs_abs_rat @ ( sgn_sgn_rat @ A ) )
        = one_one_rat ) ) ).

% abs_sgn_eq_1
thf(fact_927_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( semiri4939895301339042750nteger @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_928_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( semiri3763490453095760265atural @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_929_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( semiri681578069525770553at_rat @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_930_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_int @ zero_zero_int @ ( semiri1314217659103216013at_int @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_931_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( semiri1316708129612266289at_nat @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_932_nat__neq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( M != N )
      = ( ( ord_less_nat @ M @ N )
        | ( ord_less_nat @ N @ M ) ) ) ).

% nat_neq_iff
thf(fact_933_less__not__refl,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_not_refl
thf(fact_934_less__not__refl2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( M != N ) ) ).

% less_not_refl2
thf(fact_935_less__not__refl3,axiom,
    ! [S: nat,T: nat] :
      ( ( ord_less_nat @ S @ T )
     => ( S != T ) ) ).

% less_not_refl3
thf(fact_936_less__irrefl__nat,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_irrefl_nat
thf(fact_937_nat__less__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ! [M3: nat] :
              ( ( ord_less_nat @ M3 @ N2 )
             => ( P @ M3 ) )
         => ( P @ N2 ) )
     => ( P @ N ) ) ).

% nat_less_induct
thf(fact_938_infinite__descent,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ~ ( P @ N2 )
         => ? [M3: nat] :
              ( ( ord_less_nat @ M3 @ N2 )
              & ~ ( P @ M3 ) ) )
     => ( P @ N ) ) ).

% infinite_descent
thf(fact_939_linorder__neqE__nat,axiom,
    ! [X: nat,Y3: nat] :
      ( ( X != Y3 )
     => ( ~ ( ord_less_nat @ X @ Y3 )
       => ( ord_less_nat @ Y3 @ X ) ) ) ).

% linorder_neqE_nat
thf(fact_940_nat__int__comparison_I2_J,axiom,
    ( ord_less_nat
    = ( ^ [A4: nat,B4: nat] : ( ord_less_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ).

% nat_int_comparison(2)
thf(fact_941_same__sgn__abs__add,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ( sgn_sgn_Code_integer @ B )
        = ( sgn_sgn_Code_integer @ A ) )
     => ( ( abs_abs_Code_integer @ ( plus_p5714425477246183910nteger @ A @ B ) )
        = ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) ) ).

% same_sgn_abs_add
thf(fact_942_same__sgn__abs__add,axiom,
    ! [B: rat,A: rat] :
      ( ( ( sgn_sgn_rat @ B )
        = ( sgn_sgn_rat @ A ) )
     => ( ( abs_abs_rat @ ( plus_plus_rat @ A @ B ) )
        = ( plus_plus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ) ).

% same_sgn_abs_add
thf(fact_943_same__sgn__abs__add,axiom,
    ! [B: int,A: int] :
      ( ( ( sgn_sgn_int @ B )
        = ( sgn_sgn_int @ A ) )
     => ( ( abs_abs_int @ ( plus_plus_int @ A @ B ) )
        = ( plus_plus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) ) ).

% same_sgn_abs_add
thf(fact_944_nat__less__as__int,axiom,
    ( ord_less_nat
    = ( ^ [A4: nat,B4: nat] : ( ord_less_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ).

% nat_less_as_int
thf(fact_945_abs__sgn__eq,axiom,
    ! [A: int] :
      ( ( ( A = zero_zero_int )
       => ( ( abs_abs_int @ ( sgn_sgn_int @ A ) )
          = zero_zero_int ) )
      & ( ( A != zero_zero_int )
       => ( ( abs_abs_int @ ( sgn_sgn_int @ A ) )
          = one_one_int ) ) ) ).

% abs_sgn_eq
thf(fact_946_abs__sgn__eq,axiom,
    ! [A: code_integer] :
      ( ( ( A = zero_z3403309356797280102nteger )
       => ( ( abs_abs_Code_integer @ ( sgn_sgn_Code_integer @ A ) )
          = zero_z3403309356797280102nteger ) )
      & ( ( A != zero_z3403309356797280102nteger )
       => ( ( abs_abs_Code_integer @ ( sgn_sgn_Code_integer @ A ) )
          = one_one_Code_integer ) ) ) ).

% abs_sgn_eq
thf(fact_947_abs__sgn__eq,axiom,
    ! [A: rat] :
      ( ( ( A = zero_zero_rat )
       => ( ( abs_abs_rat @ ( sgn_sgn_rat @ A ) )
          = zero_zero_rat ) )
      & ( ( A != zero_zero_rat )
       => ( ( abs_abs_rat @ ( sgn_sgn_rat @ A ) )
          = one_one_rat ) ) ) ).

% abs_sgn_eq
thf(fact_948_abs__eq__0__iff,axiom,
    ! [A: int] :
      ( ( ( abs_abs_int @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% abs_eq_0_iff
thf(fact_949_abs__eq__0__iff,axiom,
    ! [A: code_integer] :
      ( ( ( abs_abs_Code_integer @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% abs_eq_0_iff
thf(fact_950_abs__eq__0__iff,axiom,
    ! [A: rat] :
      ( ( ( abs_abs_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% abs_eq_0_iff
thf(fact_951_abs__one,axiom,
    ( ( abs_abs_int @ one_one_int )
    = one_one_int ) ).

% abs_one
thf(fact_952_abs__one,axiom,
    ( ( abs_abs_Code_integer @ one_one_Code_integer )
    = one_one_Code_integer ) ).

% abs_one
thf(fact_953_abs__one,axiom,
    ( ( abs_abs_rat @ one_one_rat )
    = one_one_rat ) ).

% abs_one
thf(fact_954_abs__eq__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( ( abs_abs_int @ X )
        = ( abs_abs_int @ Y3 ) )
      = ( ( X = Y3 )
        | ( X
          = ( uminus_uminus_int @ Y3 ) ) ) ) ).

% abs_eq_iff
thf(fact_955_abs__eq__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ( abs_abs_Code_integer @ X )
        = ( abs_abs_Code_integer @ Y3 ) )
      = ( ( X = Y3 )
        | ( X
          = ( uminus1351360451143612070nteger @ Y3 ) ) ) ) ).

% abs_eq_iff
thf(fact_956_abs__eq__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ( abs_abs_rat @ X )
        = ( abs_abs_rat @ Y3 ) )
      = ( ( X = Y3 )
        | ( X
          = ( uminus_uminus_rat @ Y3 ) ) ) ) ).

% abs_eq_iff
thf(fact_957_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_958_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_959_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_960_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_961_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_962_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_963_int__ops_I1_J,axiom,
    ( ( semiri1314217659103216013at_int @ zero_zero_nat )
    = zero_zero_int ) ).

% int_ops(1)
thf(fact_964_int__cases3,axiom,
    ! [K: int] :
      ( ( K != zero_zero_int )
     => ( ! [N2: nat] :
            ( ( K
              = ( semiri1314217659103216013at_int @ N2 ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) )
       => ~ ! [N2: nat] :
              ( ( K
                = ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N2 ) ) )
             => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ) ).

% int_cases3
thf(fact_965_int__cases4,axiom,
    ! [M: int] :
      ( ! [N2: nat] :
          ( M
         != ( semiri1314217659103216013at_int @ N2 ) )
     => ~ ! [N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( M
             != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ) ).

% int_cases4
thf(fact_966_neg__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_int @ K @ zero_zero_int )
     => ~ ! [N2: nat] :
            ( ( K
              = ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N2 ) ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ).

% neg_int_cases
thf(fact_967_pos__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ~ ! [N2: nat] :
            ( ( K
              = ( semiri1314217659103216013at_int @ N2 ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ).

% pos_int_cases
thf(fact_968_zero__less__imp__eq__int,axiom,
    ! [K: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ? [N2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ N2 )
          & ( K
            = ( semiri1314217659103216013at_int @ N2 ) ) ) ) ).

% zero_less_imp_eq_int
thf(fact_969_zadd__int__left,axiom,
    ! [M: nat,N: nat,Z: int] :
      ( ( plus_plus_int @ ( semiri1314217659103216013at_int @ M ) @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ Z ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ ( plus_plus_nat @ M @ N ) ) @ Z ) ) ).

% zadd_int_left
thf(fact_970_int__plus,axiom,
    ! [N: nat,M: nat] :
      ( ( semiri1314217659103216013at_int @ ( plus_plus_nat @ N @ M ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ ( semiri1314217659103216013at_int @ M ) ) ) ).

% int_plus
thf(fact_971_int__ops_I5_J,axiom,
    ! [A: nat,B: nat] :
      ( ( semiri1314217659103216013at_int @ ( plus_plus_nat @ A @ B ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% int_ops(5)
thf(fact_972_sgn__0__0,axiom,
    ! [A: int] :
      ( ( ( sgn_sgn_int @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% sgn_0_0
thf(fact_973_sgn__0__0,axiom,
    ! [A: code_integer] :
      ( ( ( sgn_sgn_Code_integer @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% sgn_0_0
thf(fact_974_sgn__0__0,axiom,
    ! [A: rat] :
      ( ( ( sgn_sgn_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% sgn_0_0
thf(fact_975_sgn__eq__0__iff,axiom,
    ! [A: int] :
      ( ( ( sgn_sgn_int @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% sgn_eq_0_iff
thf(fact_976_sgn__eq__0__iff,axiom,
    ! [A: code_integer] :
      ( ( ( sgn_sgn_Code_integer @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% sgn_eq_0_iff
thf(fact_977_sgn__eq__0__iff,axiom,
    ! [A: rat] :
      ( ( ( sgn_sgn_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% sgn_eq_0_iff
thf(fact_978_same__sgn__sgn__add,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ( sgn_sgn_Code_integer @ B )
        = ( sgn_sgn_Code_integer @ A ) )
     => ( ( sgn_sgn_Code_integer @ ( plus_p5714425477246183910nteger @ A @ B ) )
        = ( sgn_sgn_Code_integer @ A ) ) ) ).

% same_sgn_sgn_add
thf(fact_979_same__sgn__sgn__add,axiom,
    ! [B: rat,A: rat] :
      ( ( ( sgn_sgn_rat @ B )
        = ( sgn_sgn_rat @ A ) )
     => ( ( sgn_sgn_rat @ ( plus_plus_rat @ A @ B ) )
        = ( sgn_sgn_rat @ A ) ) ) ).

% same_sgn_sgn_add
thf(fact_980_same__sgn__sgn__add,axiom,
    ! [B: int,A: int] :
      ( ( ( sgn_sgn_int @ B )
        = ( sgn_sgn_int @ A ) )
     => ( ( sgn_sgn_int @ ( plus_plus_int @ A @ B ) )
        = ( sgn_sgn_int @ A ) ) ) ).

% same_sgn_sgn_add
thf(fact_981_int__ops_I2_J,axiom,
    ( ( semiri1314217659103216013at_int @ one_one_nat )
    = one_one_int ) ).

% int_ops(2)
thf(fact_982_Ints__abs,axiom,
    ! [A: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( member_int @ ( abs_abs_int @ A ) @ ring_1_Ints_int ) ) ).

% Ints_abs
thf(fact_983_Ints__abs,axiom,
    ! [A: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( member_Code_integer @ ( abs_abs_Code_integer @ A ) @ ring_11222124179247155820nteger ) ) ).

% Ints_abs
thf(fact_984_Ints__abs,axiom,
    ! [A: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( member_rat @ ( abs_abs_rat @ A ) @ ring_1_Ints_rat ) ) ).

% Ints_abs
thf(fact_985_Ints__of__nat,axiom,
    ! [N: nat] : ( member_int @ ( semiri1314217659103216013at_int @ N ) @ ring_1_Ints_int ) ).

% Ints_of_nat
thf(fact_986_is__num__normalize_I6_J,axiom,
    ! [X: rat,Y3: rat] :
      ( ( neg_nu6808929389511037909um_rat @ X )
     => ( ( neg_nu6808929389511037909um_rat @ Y3 )
       => ( neg_nu6808929389511037909um_rat @ ( plus_plus_rat @ X @ Y3 ) ) ) ) ).

% is_num_normalize(6)
thf(fact_987_is__num__normalize_I6_J,axiom,
    ! [X: int,Y3: int] :
      ( ( neg_nu7441568979088483369um_int @ X )
     => ( ( neg_nu7441568979088483369um_int @ Y3 )
       => ( neg_nu7441568979088483369um_int @ ( plus_plus_int @ X @ Y3 ) ) ) ) ).

% is_num_normalize(6)
thf(fact_988_is__num__add__commute,axiom,
    ! [X: rat,Y3: rat] :
      ( ( neg_nu6808929389511037909um_rat @ X )
     => ( ( neg_nu6808929389511037909um_rat @ Y3 )
       => ( ( plus_plus_rat @ X @ Y3 )
          = ( plus_plus_rat @ Y3 @ X ) ) ) ) ).

% is_num_add_commute
thf(fact_989_is__num__add__commute,axiom,
    ! [X: int,Y3: int] :
      ( ( neg_nu7441568979088483369um_int @ X )
     => ( ( neg_nu7441568979088483369um_int @ Y3 )
       => ( ( plus_plus_int @ X @ Y3 )
          = ( plus_plus_int @ Y3 @ X ) ) ) ) ).

% is_num_add_commute
thf(fact_990_is__num__add__left__commute,axiom,
    ! [X: rat,Y3: rat,Z: rat] :
      ( ( neg_nu6808929389511037909um_rat @ X )
     => ( ( neg_nu6808929389511037909um_rat @ Y3 )
       => ( ( plus_plus_rat @ X @ ( plus_plus_rat @ Y3 @ Z ) )
          = ( plus_plus_rat @ Y3 @ ( plus_plus_rat @ X @ Z ) ) ) ) ) ).

% is_num_add_left_commute
thf(fact_991_is__num__add__left__commute,axiom,
    ! [X: int,Y3: int,Z: int] :
      ( ( neg_nu7441568979088483369um_int @ X )
     => ( ( neg_nu7441568979088483369um_int @ Y3 )
       => ( ( plus_plus_int @ X @ ( plus_plus_int @ Y3 @ Z ) )
          = ( plus_plus_int @ Y3 @ ( plus_plus_int @ X @ Z ) ) ) ) ) ).

% is_num_add_left_commute
thf(fact_992_is__num__normalize_I4_J,axiom,
    neg_nu7441568979088483369um_int @ one_one_int ).

% is_num_normalize(4)
thf(fact_993_is__num__normalize_I4_J,axiom,
    neg_nu2435721316971906650nteger @ one_one_Code_integer ).

% is_num_normalize(4)
thf(fact_994_is__num__normalize_I4_J,axiom,
    neg_nu6808929389511037909um_rat @ one_one_rat ).

% is_num_normalize(4)
thf(fact_995_abs__not__less__zero,axiom,
    ! [A: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ A ) @ zero_z3403309356797280102nteger ) ).

% abs_not_less_zero
thf(fact_996_abs__not__less__zero,axiom,
    ! [A: rat] :
      ~ ( ord_less_rat @ ( abs_abs_rat @ A ) @ zero_zero_rat ) ).

% abs_not_less_zero
thf(fact_997_abs__not__less__zero,axiom,
    ! [A: int] :
      ~ ( ord_less_int @ ( abs_abs_int @ A ) @ zero_zero_int ) ).

% abs_not_less_zero
thf(fact_998_abs__of__pos,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( abs_abs_Code_integer @ A )
        = A ) ) ).

% abs_of_pos
thf(fact_999_abs__of__pos,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( abs_abs_rat @ A )
        = A ) ) ).

% abs_of_pos
thf(fact_1000_abs__of__pos,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( abs_abs_int @ A )
        = A ) ) ).

% abs_of_pos
thf(fact_1001_abs__less__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ ( abs_abs_int @ A ) @ B )
      = ( ( ord_less_int @ A @ B )
        & ( ord_less_int @ ( uminus_uminus_int @ A ) @ B ) ) ) ).

% abs_less_iff
thf(fact_1002_abs__less__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ A ) @ B )
      = ( ( ord_le6747313008572928689nteger @ A @ B )
        & ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ A ) @ B ) ) ) ).

% abs_less_iff
thf(fact_1003_abs__less__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( abs_abs_rat @ A ) @ B )
      = ( ( ord_less_rat @ A @ B )
        & ( ord_less_rat @ ( uminus_uminus_rat @ A ) @ B ) ) ) ).

% abs_less_iff
thf(fact_1004_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_le6747313008572928689nteger @ ( semiri4939895301339042750nteger @ M ) @ zero_z3403309356797280102nteger ) ).

% of_nat_less_0_iff
thf(fact_1005_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_le5570908160329646204atural @ ( semiri3763490453095760265atural @ M ) @ zero_z2226904508553997617atural ) ).

% of_nat_less_0_iff
thf(fact_1006_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_less_rat @ ( semiri681578069525770553at_rat @ M ) @ zero_zero_rat ) ).

% of_nat_less_0_iff
thf(fact_1007_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ zero_zero_int ) ).

% of_nat_less_0_iff
thf(fact_1008_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_less_nat @ ( semiri1316708129612266289at_nat @ M ) @ zero_zero_nat ) ).

% of_nat_less_0_iff
thf(fact_1009_sgn__not__eq__imp,axiom,
    ! [B: int,A: int] :
      ( ( ( sgn_sgn_int @ B )
       != ( sgn_sgn_int @ A ) )
     => ( ( ( sgn_sgn_int @ A )
         != zero_zero_int )
       => ( ( ( sgn_sgn_int @ B )
           != zero_zero_int )
         => ( ( sgn_sgn_int @ A )
            = ( uminus_uminus_int @ ( sgn_sgn_int @ B ) ) ) ) ) ) ).

% sgn_not_eq_imp
thf(fact_1010_sgn__not__eq__imp,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ( sgn_sgn_Code_integer @ B )
       != ( sgn_sgn_Code_integer @ A ) )
     => ( ( ( sgn_sgn_Code_integer @ A )
         != zero_z3403309356797280102nteger )
       => ( ( ( sgn_sgn_Code_integer @ B )
           != zero_z3403309356797280102nteger )
         => ( ( sgn_sgn_Code_integer @ A )
            = ( uminus1351360451143612070nteger @ ( sgn_sgn_Code_integer @ B ) ) ) ) ) ) ).

% sgn_not_eq_imp
thf(fact_1011_sgn__not__eq__imp,axiom,
    ! [B: rat,A: rat] :
      ( ( ( sgn_sgn_rat @ B )
       != ( sgn_sgn_rat @ A ) )
     => ( ( ( sgn_sgn_rat @ A )
         != zero_zero_rat )
       => ( ( ( sgn_sgn_rat @ B )
           != zero_zero_rat )
         => ( ( sgn_sgn_rat @ A )
            = ( uminus_uminus_rat @ ( sgn_sgn_rat @ B ) ) ) ) ) ) ).

% sgn_not_eq_imp
thf(fact_1012_sgn__minus__1,axiom,
    ( ( sgn_sgn_int @ ( uminus_uminus_int @ one_one_int ) )
    = ( uminus_uminus_int @ one_one_int ) ) ).

% sgn_minus_1
thf(fact_1013_sgn__minus__1,axiom,
    ( ( sgn_sgn_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% sgn_minus_1
thf(fact_1014_sgn__minus__1,axiom,
    ( ( sgn_sgn_rat @ ( uminus_uminus_rat @ one_one_rat ) )
    = ( uminus_uminus_rat @ one_one_rat ) ) ).

% sgn_minus_1
thf(fact_1015_abs__if__raw,axiom,
    ( abs_abs_int
    = ( ^ [A4: int] : ( if_int @ ( ord_less_int @ A4 @ zero_zero_int ) @ ( uminus_uminus_int @ A4 ) @ A4 ) ) ) ).

% abs_if_raw
thf(fact_1016_abs__if__raw,axiom,
    ( abs_abs_Code_integer
    = ( ^ [A4: code_integer] : ( if_Code_integer @ ( ord_le6747313008572928689nteger @ A4 @ zero_z3403309356797280102nteger ) @ ( uminus1351360451143612070nteger @ A4 ) @ A4 ) ) ) ).

% abs_if_raw
thf(fact_1017_abs__if__raw,axiom,
    ( abs_abs_rat
    = ( ^ [A4: rat] : ( if_rat @ ( ord_less_rat @ A4 @ zero_zero_rat ) @ ( uminus_uminus_rat @ A4 ) @ A4 ) ) ) ).

% abs_if_raw
thf(fact_1018_abs__if,axiom,
    ( abs_abs_int
    = ( ^ [A4: int] : ( if_int @ ( ord_less_int @ A4 @ zero_zero_int ) @ ( uminus_uminus_int @ A4 ) @ A4 ) ) ) ).

% abs_if
thf(fact_1019_abs__if,axiom,
    ( abs_abs_Code_integer
    = ( ^ [A4: code_integer] : ( if_Code_integer @ ( ord_le6747313008572928689nteger @ A4 @ zero_z3403309356797280102nteger ) @ ( uminus1351360451143612070nteger @ A4 ) @ A4 ) ) ) ).

% abs_if
thf(fact_1020_abs__if,axiom,
    ( abs_abs_rat
    = ( ^ [A4: rat] : ( if_rat @ ( ord_less_rat @ A4 @ zero_zero_rat ) @ ( uminus_uminus_rat @ A4 ) @ A4 ) ) ) ).

% abs_if
thf(fact_1021_abs__of__neg,axiom,
    ! [A: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( abs_abs_int @ A )
        = ( uminus_uminus_int @ A ) ) ) ).

% abs_of_neg
thf(fact_1022_abs__of__neg,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( abs_abs_Code_integer @ A )
        = ( uminus1351360451143612070nteger @ A ) ) ) ).

% abs_of_neg
thf(fact_1023_abs__of__neg,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( abs_abs_rat @ A )
        = ( uminus_uminus_rat @ A ) ) ) ).

% abs_of_neg
thf(fact_1024_sgn__1__pos,axiom,
    ! [A: code_integer] :
      ( ( ( sgn_sgn_Code_integer @ A )
        = one_one_Code_integer )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% sgn_1_pos
thf(fact_1025_sgn__1__pos,axiom,
    ! [A: rat] :
      ( ( ( sgn_sgn_rat @ A )
        = one_one_rat )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% sgn_1_pos
thf(fact_1026_sgn__1__pos,axiom,
    ! [A: int] :
      ( ( ( sgn_sgn_int @ A )
        = one_one_int )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% sgn_1_pos
thf(fact_1027_abs__add__one__gt__zero,axiom,
    ! [X: code_integer] : ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( abs_abs_Code_integer @ X ) ) ) ).

% abs_add_one_gt_zero
thf(fact_1028_abs__add__one__gt__zero,axiom,
    ! [X: rat] : ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ one_one_rat @ ( abs_abs_rat @ X ) ) ) ).

% abs_add_one_gt_zero
thf(fact_1029_abs__add__one__gt__zero,axiom,
    ! [X: int] : ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ one_one_int @ ( abs_abs_int @ X ) ) ) ).

% abs_add_one_gt_zero
thf(fact_1030_fold__atLeastAtMost__nat_Opsimps,axiom,
    ! [F: nat > nat > nat,A: nat,B: nat,Acc: nat] :
      ( ( accp_P6019419558468335806at_nat @ set_fo3699595496184130361el_nat @ ( produc3209952032786966637at_nat @ F @ ( produc487386426758144856at_nat @ A @ ( product_Pair_nat_nat @ B @ Acc ) ) ) )
     => ( ( ( ord_less_nat @ B @ A )
         => ( ( set_fo2584398358068434914at_nat @ F @ A @ B @ Acc )
            = Acc ) )
        & ( ~ ( ord_less_nat @ B @ A )
         => ( ( set_fo2584398358068434914at_nat @ F @ A @ B @ Acc )
            = ( set_fo2584398358068434914at_nat @ F @ ( plus_plus_nat @ A @ one_one_nat ) @ B @ ( F @ A @ Acc ) ) ) ) ) ) ).

% fold_atLeastAtMost_nat.psimps
thf(fact_1031_fold__atLeastAtMost__nat_Opelims,axiom,
    ! [X: nat > nat > nat,Xa: nat,Xb: nat,Xc: nat,Y3: nat] :
      ( ( ( set_fo2584398358068434914at_nat @ X @ Xa @ Xb @ Xc )
        = Y3 )
     => ( ( accp_P6019419558468335806at_nat @ set_fo3699595496184130361el_nat @ ( produc3209952032786966637at_nat @ X @ ( produc487386426758144856at_nat @ Xa @ ( product_Pair_nat_nat @ Xb @ Xc ) ) ) )
       => ~ ( ( ( ( ord_less_nat @ Xb @ Xa )
               => ( Y3 = Xc ) )
              & ( ~ ( ord_less_nat @ Xb @ Xa )
               => ( Y3
                  = ( set_fo2584398358068434914at_nat @ X @ ( plus_plus_nat @ Xa @ one_one_nat ) @ Xb @ ( X @ Xa @ Xc ) ) ) ) )
           => ~ ( accp_P6019419558468335806at_nat @ set_fo3699595496184130361el_nat @ ( produc3209952032786966637at_nat @ X @ ( produc487386426758144856at_nat @ Xa @ ( product_Pair_nat_nat @ Xb @ Xc ) ) ) ) ) ) ) ).

% fold_atLeastAtMost_nat.pelims
thf(fact_1032_fold__atLeastAtMost__nat_Oelims,axiom,
    ! [X: nat > nat > nat,Xa: nat,Xb: nat,Xc: nat,Y3: nat] :
      ( ( ( set_fo2584398358068434914at_nat @ X @ Xa @ Xb @ Xc )
        = Y3 )
     => ( ( ( ord_less_nat @ Xb @ Xa )
         => ( Y3 = Xc ) )
        & ( ~ ( ord_less_nat @ Xb @ Xa )
         => ( Y3
            = ( set_fo2584398358068434914at_nat @ X @ ( plus_plus_nat @ Xa @ one_one_nat ) @ Xb @ ( X @ Xa @ Xc ) ) ) ) ) ) ).

% fold_atLeastAtMost_nat.elims
thf(fact_1033_fold__atLeastAtMost__nat_Osimps,axiom,
    ( set_fo2584398358068434914at_nat
    = ( ^ [F2: nat > nat > nat,A4: nat,B4: nat,Acc2: nat] : ( if_nat @ ( ord_less_nat @ B4 @ A4 ) @ Acc2 @ ( set_fo2584398358068434914at_nat @ F2 @ ( plus_plus_nat @ A4 @ one_one_nat ) @ B4 @ ( F2 @ A4 @ Acc2 ) ) ) ) ) ).

% fold_atLeastAtMost_nat.simps
thf(fact_1034_sgn__of__nat,axiom,
    ! [N: nat] :
      ( ( sgn_sgn_Code_integer @ ( semiri4939895301339042750nteger @ N ) )
      = ( zero_n356916108424825756nteger @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% sgn_of_nat
thf(fact_1035_sgn__of__nat,axiom,
    ! [N: nat] :
      ( ( sgn_sgn_rat @ ( semiri681578069525770553at_rat @ N ) )
      = ( zero_n2052037380579107095ol_rat @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% sgn_of_nat
thf(fact_1036_sgn__of__nat,axiom,
    ! [N: nat] :
      ( ( sgn_sgn_int @ ( semiri1314217659103216013at_int @ N ) )
      = ( zero_n2684676970156552555ol_int @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% sgn_of_nat
thf(fact_1037_Ints__nonzero__abs__ge1,axiom,
    ! [X: code_integer] :
      ( ( member_Code_integer @ X @ ring_11222124179247155820nteger )
     => ( ( X != zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( abs_abs_Code_integer @ X ) ) ) ) ).

% Ints_nonzero_abs_ge1
thf(fact_1038_Ints__nonzero__abs__ge1,axiom,
    ! [X: rat] :
      ( ( member_rat @ X @ ring_1_Ints_rat )
     => ( ( X != zero_zero_rat )
       => ( ord_less_eq_rat @ one_one_rat @ ( abs_abs_rat @ X ) ) ) ) ).

% Ints_nonzero_abs_ge1
thf(fact_1039_Ints__nonzero__abs__ge1,axiom,
    ! [X: int] :
      ( ( member_int @ X @ ring_1_Ints_int )
     => ( ( X != zero_zero_int )
       => ( ord_less_eq_int @ one_one_int @ ( abs_abs_int @ X ) ) ) ) ).

% Ints_nonzero_abs_ge1
thf(fact_1040_num__of__nat__plus__distrib,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( num_of_nat @ ( plus_plus_nat @ M @ N ) )
          = ( plus_plus_num @ ( num_of_nat @ M ) @ ( num_of_nat @ N ) ) ) ) ) ).

% num_of_nat_plus_distrib
thf(fact_1041_Ints__eq__abs__less1,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( member_Code_integer @ X @ ring_11222124179247155820nteger )
     => ( ( member_Code_integer @ Y3 @ ring_11222124179247155820nteger )
       => ( ( X = Y3 )
          = ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ X @ Y3 ) ) @ one_one_Code_integer ) ) ) ) ).

% Ints_eq_abs_less1
thf(fact_1042_Ints__eq__abs__less1,axiom,
    ! [X: rat,Y3: rat] :
      ( ( member_rat @ X @ ring_1_Ints_rat )
     => ( ( member_rat @ Y3 @ ring_1_Ints_rat )
       => ( ( X = Y3 )
          = ( ord_less_rat @ ( abs_abs_rat @ ( minus_minus_rat @ X @ Y3 ) ) @ one_one_rat ) ) ) ) ).

% Ints_eq_abs_less1
thf(fact_1043_Ints__eq__abs__less1,axiom,
    ! [X: int,Y3: int] :
      ( ( member_int @ X @ ring_1_Ints_int )
     => ( ( member_int @ Y3 @ ring_1_Ints_int )
       => ( ( X = Y3 )
          = ( ord_less_int @ ( abs_abs_int @ ( minus_minus_int @ X @ Y3 ) ) @ one_one_int ) ) ) ) ).

% Ints_eq_abs_less1
thf(fact_1044_of__nat__zero__less__power__iff,axiom,
    ! [X: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ ( semiri4939895301339042750nteger @ X ) @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X )
        | ( N = zero_zero_nat ) ) ) ).

% of_nat_zero_less_power_iff
thf(fact_1045_of__nat__zero__less__power__iff,axiom,
    ! [X: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( power_7079662738309270450atural @ ( semiri3763490453095760265atural @ X ) @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X )
        | ( N = zero_zero_nat ) ) ) ).

% of_nat_zero_less_power_iff
thf(fact_1046_of__nat__zero__less__power__iff,axiom,
    ! [X: nat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( power_power_rat @ ( semiri681578069525770553at_rat @ X ) @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X )
        | ( N = zero_zero_nat ) ) ) ).

% of_nat_zero_less_power_iff
thf(fact_1047_of__nat__zero__less__power__iff,axiom,
    ! [X: nat,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ ( power_power_int @ ( semiri1314217659103216013at_int @ X ) @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X )
        | ( N = zero_zero_nat ) ) ) ).

% of_nat_zero_less_power_iff
thf(fact_1048_of__nat__zero__less__power__iff,axiom,
    ! [X: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( power_power_nat @ ( semiri1316708129612266289at_nat @ X ) @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X )
        | ( N = zero_zero_nat ) ) ) ).

% of_nat_zero_less_power_iff
thf(fact_1049_abs__of__nonpos,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( abs_abs_Code_integer @ A )
        = ( uminus1351360451143612070nteger @ A ) ) ) ).

% abs_of_nonpos
thf(fact_1050_abs__of__nonpos,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( abs_abs_rat @ A )
        = ( uminus_uminus_rat @ A ) ) ) ).

% abs_of_nonpos
thf(fact_1051_abs__of__nonpos,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( abs_abs_int @ A )
        = ( uminus_uminus_int @ A ) ) ) ).

% abs_of_nonpos
thf(fact_1052_diff__is__0__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% diff_is_0_eq
thf(fact_1053_diff__is__0__eq_H,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat ) ) ).

% diff_is_0_eq'
thf(fact_1054_diff__self__eq__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ M )
      = zero_zero_nat ) ).

% diff_self_eq_0
thf(fact_1055_diff__0__eq__0,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% diff_0_eq_0
thf(fact_1056_le0,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% le0
thf(fact_1057_bot__nat__0_Oextremum,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ zero_zero_nat @ A ) ).

% bot_nat_0.extremum
thf(fact_1058_Nat_Oadd__diff__assoc,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ J ) @ K ) ) ) ).

% Nat.add_diff_assoc
thf(fact_1059_Nat_Oadd__diff__assoc2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( minus_minus_nat @ ( plus_plus_nat @ J @ I ) @ K ) ) ) ).

% Nat.add_diff_assoc2
thf(fact_1060_Nat_Odiff__diff__right,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ) ).

% Nat.diff_diff_right
thf(fact_1061_diff__diff__left,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ I @ ( plus_plus_nat @ J @ K ) ) ) ).

% diff_diff_left
thf(fact_1062_nat__add__left__cancel__le,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% nat_add_left_cancel_le
thf(fact_1063_le__zero__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_zero_eq
thf(fact_1064_add__le__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) )
      = ( ord_less_eq_rat @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_1065_add__le__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_1066_add__le__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( ord_less_eq_int @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_1067_add__le__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) )
      = ( ord_less_eq_rat @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_1068_add__le__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_1069_add__le__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( ord_less_eq_int @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_1070_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: code_natural] :
      ( ( minus_7197305767214868737atural @ A @ A )
      = zero_z2226904508553997617atural ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1071_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ A )
      = zero_zero_nat ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1072_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ A )
      = zero_zero_int ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1073_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ A )
      = zero_z3403309356797280102nteger ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1074_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: rat] :
      ( ( minus_minus_rat @ A @ A )
      = zero_zero_rat ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1075_diff__zero,axiom,
    ! [A: code_natural] :
      ( ( minus_7197305767214868737atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% diff_zero
thf(fact_1076_diff__zero,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ zero_zero_nat )
      = A ) ).

% diff_zero
thf(fact_1077_diff__zero,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ zero_zero_int )
      = A ) ).

% diff_zero
thf(fact_1078_diff__zero,axiom,
    ! [A: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% diff_zero
thf(fact_1079_diff__zero,axiom,
    ! [A: rat] :
      ( ( minus_minus_rat @ A @ zero_zero_rat )
      = A ) ).

% diff_zero
thf(fact_1080_zero__diff,axiom,
    ! [A: code_natural] :
      ( ( minus_7197305767214868737atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% zero_diff
thf(fact_1081_zero__diff,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% zero_diff
thf(fact_1082_diff__0__right,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ zero_zero_int )
      = A ) ).

% diff_0_right
thf(fact_1083_diff__0__right,axiom,
    ! [A: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% diff_0_right
thf(fact_1084_diff__0__right,axiom,
    ! [A: rat] :
      ( ( minus_minus_rat @ A @ zero_zero_rat )
      = A ) ).

% diff_0_right
thf(fact_1085_diff__self,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ A )
      = zero_zero_int ) ).

% diff_self
thf(fact_1086_diff__self,axiom,
    ! [A: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ A )
      = zero_z3403309356797280102nteger ) ).

% diff_self
thf(fact_1087_diff__self,axiom,
    ! [A: rat] :
      ( ( minus_minus_rat @ A @ A )
      = zero_zero_rat ) ).

% diff_self
thf(fact_1088_neg__le__iff__le,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le3102999989581377725nteger @ A @ B ) ) ).

% neg_le_iff_le
thf(fact_1089_neg__le__iff__le,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_eq_rat @ A @ B ) ) ).

% neg_le_iff_le
thf(fact_1090_neg__le__iff__le,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) )
      = ( ord_less_eq_int @ A @ B ) ) ).

% neg_le_iff_le
thf(fact_1091_add__diff__cancel__right_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_1092_add__diff__cancel__right_H,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_1093_add__diff__cancel__right_H,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_1094_add__diff__cancel__right_H,axiom,
    ! [A: rat,B: rat] :
      ( ( minus_minus_rat @ ( plus_plus_rat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_1095_add__diff__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_1096_add__diff__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( minus_minus_int @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_1097_add__diff__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_1098_add__diff__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( minus_minus_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) )
      = ( minus_minus_rat @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_1099_add__diff__cancel__left_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_1100_add__diff__cancel__left_H,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_1101_add__diff__cancel__left_H,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_1102_add__diff__cancel__left_H,axiom,
    ! [A: rat,B: rat] :
      ( ( minus_minus_rat @ ( plus_plus_rat @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_1103_add__diff__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_1104_add__diff__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( minus_minus_int @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_1105_add__diff__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ C @ A ) @ ( plus_p5714425477246183910nteger @ C @ B ) )
      = ( minus_8373710615458151222nteger @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_1106_add__diff__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( minus_minus_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) )
      = ( minus_minus_rat @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_1107_diff__add__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_1108_diff__add__cancel,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_1109_diff__add__cancel,axiom,
    ! [A: rat,B: rat] :
      ( ( plus_plus_rat @ ( minus_minus_rat @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_1110_add__diff__cancel,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_1111_add__diff__cancel,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_1112_add__diff__cancel,axiom,
    ! [A: rat,B: rat] :
      ( ( minus_minus_rat @ ( plus_plus_rat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_1113_of__nat__le__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% of_nat_le_iff
thf(fact_1114_of__nat__le__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% of_nat_le_iff
thf(fact_1115_of__nat__le__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% of_nat_le_iff
thf(fact_1116_minus__diff__eq,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( minus_minus_int @ A @ B ) )
      = ( minus_minus_int @ B @ A ) ) ).

% minus_diff_eq
thf(fact_1117_minus__diff__eq,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( minus_8373710615458151222nteger @ B @ A ) ) ).

% minus_diff_eq
thf(fact_1118_minus__diff__eq,axiom,
    ! [A: rat,B: rat] :
      ( ( uminus_uminus_rat @ ( minus_minus_rat @ A @ B ) )
      = ( minus_minus_rat @ B @ A ) ) ).

% minus_diff_eq
thf(fact_1119_power__one,axiom,
    ! [N: nat] :
      ( ( power_8256067586552552935nteger @ one_one_Code_integer @ N )
      = one_one_Code_integer ) ).

% power_one
thf(fact_1120_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_rat @ one_one_rat @ N )
      = one_one_rat ) ).

% power_one
thf(fact_1121_power__one,axiom,
    ! [N: nat] :
      ( ( power_7079662738309270450atural @ one_one_Code_natural @ N )
      = one_one_Code_natural ) ).

% power_one
thf(fact_1122_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_nat @ one_one_nat @ N )
      = one_one_nat ) ).

% power_one
thf(fact_1123_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_int @ one_one_int @ N )
      = one_one_int ) ).

% power_one
thf(fact_1124_nat__zero__less__power__iff,axiom,
    ! [X: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( power_power_nat @ X @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X )
        | ( N = zero_zero_nat ) ) ) ).

% nat_zero_less_power_iff
thf(fact_1125_zero__less__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) )
      = ( ord_less_nat @ M @ N ) ) ).

% zero_less_diff
thf(fact_1126_of__bool__less__eq__iff,axiom,
    ! [P: $o,Q: $o] :
      ( ( ord_less_eq_rat @ ( zero_n2052037380579107095ol_rat @ P ) @ ( zero_n2052037380579107095ol_rat @ Q ) )
      = ( P
       => Q ) ) ).

% of_bool_less_eq_iff
thf(fact_1127_of__bool__less__eq__iff,axiom,
    ! [P: $o,Q: $o] :
      ( ( ord_less_eq_int @ ( zero_n2684676970156552555ol_int @ P ) @ ( zero_n2684676970156552555ol_int @ Q ) )
      = ( P
       => Q ) ) ).

% of_bool_less_eq_iff
thf(fact_1128_of__bool__less__eq__iff,axiom,
    ! [P: $o,Q: $o] :
      ( ( ord_less_eq_nat @ ( zero_n2687167440665602831ol_nat @ P ) @ ( zero_n2687167440665602831ol_nat @ Q ) )
      = ( P
       => Q ) ) ).

% of_bool_less_eq_iff
thf(fact_1129_of__bool__eq__0__iff,axiom,
    ! [P: $o] :
      ( ( ( zero_n356916108424825756nteger @ P )
        = zero_z3403309356797280102nteger )
      = ~ P ) ).

% of_bool_eq_0_iff
thf(fact_1130_of__bool__eq__0__iff,axiom,
    ! [P: $o] :
      ( ( ( zero_n2052037380579107095ol_rat @ P )
        = zero_zero_rat )
      = ~ P ) ).

% of_bool_eq_0_iff
thf(fact_1131_of__bool__eq__0__iff,axiom,
    ! [P: $o] :
      ( ( ( zero_n8403883297036319079atural @ P )
        = zero_z2226904508553997617atural )
      = ~ P ) ).

% of_bool_eq_0_iff
thf(fact_1132_of__bool__eq__0__iff,axiom,
    ! [P: $o] :
      ( ( ( zero_n2684676970156552555ol_int @ P )
        = zero_zero_int )
      = ~ P ) ).

% of_bool_eq_0_iff
thf(fact_1133_of__bool__eq__0__iff,axiom,
    ! [P: $o] :
      ( ( ( zero_n2687167440665602831ol_nat @ P )
        = zero_zero_nat )
      = ~ P ) ).

% of_bool_eq_0_iff
thf(fact_1134_of__bool__eq_I1_J,axiom,
    ( ( zero_n356916108424825756nteger @ $false )
    = zero_z3403309356797280102nteger ) ).

% of_bool_eq(1)
thf(fact_1135_of__bool__eq_I1_J,axiom,
    ( ( zero_n2052037380579107095ol_rat @ $false )
    = zero_zero_rat ) ).

% of_bool_eq(1)
thf(fact_1136_of__bool__eq_I1_J,axiom,
    ( ( zero_n8403883297036319079atural @ $false )
    = zero_z2226904508553997617atural ) ).

% of_bool_eq(1)
thf(fact_1137_of__bool__eq_I1_J,axiom,
    ( ( zero_n2684676970156552555ol_int @ $false )
    = zero_zero_int ) ).

% of_bool_eq(1)
thf(fact_1138_of__bool__eq_I1_J,axiom,
    ( ( zero_n2687167440665602831ol_nat @ $false )
    = zero_zero_nat ) ).

% of_bool_eq(1)
thf(fact_1139_of__bool__less__iff,axiom,
    ! [P: $o,Q: $o] :
      ( ( ord_less_rat @ ( zero_n2052037380579107095ol_rat @ P ) @ ( zero_n2052037380579107095ol_rat @ Q ) )
      = ( ~ P
        & Q ) ) ).

% of_bool_less_iff
thf(fact_1140_of__bool__less__iff,axiom,
    ! [P: $o,Q: $o] :
      ( ( ord_less_int @ ( zero_n2684676970156552555ol_int @ P ) @ ( zero_n2684676970156552555ol_int @ Q ) )
      = ( ~ P
        & Q ) ) ).

% of_bool_less_iff
thf(fact_1141_of__bool__less__iff,axiom,
    ! [P: $o,Q: $o] :
      ( ( ord_less_nat @ ( zero_n2687167440665602831ol_nat @ P ) @ ( zero_n2687167440665602831ol_nat @ Q ) )
      = ( ~ P
        & Q ) ) ).

% of_bool_less_iff
thf(fact_1142_power__one__right,axiom,
    ! [A: nat] :
      ( ( power_power_nat @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_1143_power__one__right,axiom,
    ! [A: int] :
      ( ( power_power_int @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_1144_zle__diff1__eq,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_eq_int @ W @ ( minus_minus_int @ Z @ one_one_int ) )
      = ( ord_less_int @ W @ Z ) ) ).

% zle_diff1_eq
thf(fact_1145_of__bool__eq__1__iff,axiom,
    ! [P: $o] :
      ( ( ( zero_n356916108424825756nteger @ P )
        = one_one_Code_integer )
      = P ) ).

% of_bool_eq_1_iff
thf(fact_1146_of__bool__eq__1__iff,axiom,
    ! [P: $o] :
      ( ( ( zero_n2052037380579107095ol_rat @ P )
        = one_one_rat )
      = P ) ).

% of_bool_eq_1_iff
thf(fact_1147_of__bool__eq__1__iff,axiom,
    ! [P: $o] :
      ( ( ( zero_n8403883297036319079atural @ P )
        = one_one_Code_natural )
      = P ) ).

% of_bool_eq_1_iff
thf(fact_1148_of__bool__eq__1__iff,axiom,
    ! [P: $o] :
      ( ( ( zero_n2684676970156552555ol_int @ P )
        = one_one_int )
      = P ) ).

% of_bool_eq_1_iff
thf(fact_1149_of__bool__eq__1__iff,axiom,
    ! [P: $o] :
      ( ( ( zero_n2687167440665602831ol_nat @ P )
        = one_one_nat )
      = P ) ).

% of_bool_eq_1_iff
thf(fact_1150_of__bool__eq_I2_J,axiom,
    ( ( zero_n356916108424825756nteger @ $true )
    = one_one_Code_integer ) ).

% of_bool_eq(2)
thf(fact_1151_of__bool__eq_I2_J,axiom,
    ( ( zero_n2052037380579107095ol_rat @ $true )
    = one_one_rat ) ).

% of_bool_eq(2)
thf(fact_1152_of__bool__eq_I2_J,axiom,
    ( ( zero_n8403883297036319079atural @ $true )
    = one_one_Code_natural ) ).

% of_bool_eq(2)
thf(fact_1153_of__bool__eq_I2_J,axiom,
    ( ( zero_n2684676970156552555ol_int @ $true )
    = one_one_int ) ).

% of_bool_eq(2)
thf(fact_1154_of__bool__eq_I2_J,axiom,
    ( ( zero_n2687167440665602831ol_nat @ $true )
    = one_one_nat ) ).

% of_bool_eq(2)
thf(fact_1155_negative__zle,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ ( semiri1314217659103216013at_int @ M ) ) ).

% negative_zle
thf(fact_1156_of__nat__of__bool,axiom,
    ! [P: $o] :
      ( ( semiri1314217659103216013at_int @ ( zero_n2687167440665602831ol_nat @ P ) )
      = ( zero_n2684676970156552555ol_int @ P ) ) ).

% of_nat_of_bool
thf(fact_1157_of__nat__of__bool,axiom,
    ! [P: $o] :
      ( ( semiri1316708129612266289at_nat @ ( zero_n2687167440665602831ol_nat @ P ) )
      = ( zero_n2687167440665602831ol_nat @ P ) ) ).

% of_nat_of_bool
thf(fact_1158_abs__bool__eq,axiom,
    ! [P: $o] :
      ( ( abs_abs_Code_integer @ ( zero_n356916108424825756nteger @ P ) )
      = ( zero_n356916108424825756nteger @ P ) ) ).

% abs_bool_eq
thf(fact_1159_abs__bool__eq,axiom,
    ! [P: $o] :
      ( ( abs_abs_rat @ ( zero_n2052037380579107095ol_rat @ P ) )
      = ( zero_n2052037380579107095ol_rat @ P ) ) ).

% abs_bool_eq
thf(fact_1160_abs__bool__eq,axiom,
    ! [P: $o] :
      ( ( abs_abs_int @ ( zero_n2684676970156552555ol_int @ P ) )
      = ( zero_n2684676970156552555ol_int @ P ) ) ).

% abs_bool_eq
thf(fact_1161_zero__le__double__add__iff__zero__le__single__add,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ A ) )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% zero_le_double_add_iff_zero_le_single_add
thf(fact_1162_zero__le__double__add__iff__zero__le__single__add,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ A ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% zero_le_double_add_iff_zero_le_single_add
thf(fact_1163_zero__le__double__add__iff__zero__le__single__add,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ A @ A ) )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% zero_le_double_add_iff_zero_le_single_add
thf(fact_1164_double__add__le__zero__iff__single__add__le__zero,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ A ) @ zero_z3403309356797280102nteger )
      = ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% double_add_le_zero_iff_single_add_le_zero
thf(fact_1165_double__add__le__zero__iff__single__add__le__zero,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ A @ A ) @ zero_zero_rat )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% double_add_le_zero_iff_single_add_le_zero
thf(fact_1166_double__add__le__zero__iff__single__add__le__zero,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ A ) @ zero_zero_int )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% double_add_le_zero_iff_single_add_le_zero
thf(fact_1167_le__add__same__cancel2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( plus_p5714425477246183910nteger @ B @ A ) )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) ) ).

% le_add_same_cancel2
thf(fact_1168_le__add__same__cancel2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ ( plus_p4538020629002901425atural @ B @ A ) )
      = ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B ) ) ).

% le_add_same_cancel2
thf(fact_1169_le__add__same__cancel2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ ( plus_plus_rat @ B @ A ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ B ) ) ).

% le_add_same_cancel2
thf(fact_1170_le__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel2
thf(fact_1171_le__add__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( plus_plus_int @ B @ A ) )
      = ( ord_less_eq_int @ zero_zero_int @ B ) ) ).

% le_add_same_cancel2
thf(fact_1172_le__add__same__cancel1,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) ) ).

% le_add_same_cancel1
thf(fact_1173_le__add__same__cancel1,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ ( plus_p4538020629002901425atural @ A @ B ) )
      = ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B ) ) ).

% le_add_same_cancel1
thf(fact_1174_le__add__same__cancel1,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ ( plus_plus_rat @ A @ B ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ B ) ) ).

% le_add_same_cancel1
thf(fact_1175_le__add__same__cancel1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel1
thf(fact_1176_le__add__same__cancel1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( plus_plus_int @ A @ B ) )
      = ( ord_less_eq_int @ zero_zero_int @ B ) ) ).

% le_add_same_cancel1
thf(fact_1177_add__le__same__cancel2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
      = ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% add_le_same_cancel2
thf(fact_1178_add__le__same__cancel2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( plus_p4538020629002901425atural @ A @ B ) @ B )
      = ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural ) ) ).

% add_le_same_cancel2
thf(fact_1179_add__le__same__cancel2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ A @ B ) @ B )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% add_le_same_cancel2
thf(fact_1180_add__le__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( ord_less_eq_nat @ A @ zero_zero_nat ) ) ).

% add_le_same_cancel2
thf(fact_1181_add__le__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ B ) @ B )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% add_le_same_cancel2
thf(fact_1182_add__le__same__cancel1,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ B @ A ) @ B )
      = ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% add_le_same_cancel1
thf(fact_1183_add__le__same__cancel1,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( plus_p4538020629002901425atural @ B @ A ) @ B )
      = ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural ) ) ).

% add_le_same_cancel1
thf(fact_1184_add__le__same__cancel1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ B @ A ) @ B )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% add_le_same_cancel1
thf(fact_1185_add__le__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_eq_nat @ A @ zero_zero_nat ) ) ).

% add_le_same_cancel1
thf(fact_1186_add__le__same__cancel1,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ B @ A ) @ B )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% add_le_same_cancel1
thf(fact_1187_diff__ge__0__iff__ge,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( ord_le3102999989581377725nteger @ B @ A ) ) ).

% diff_ge_0_iff_ge
thf(fact_1188_diff__ge__0__iff__ge,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( minus_minus_rat @ A @ B ) )
      = ( ord_less_eq_rat @ B @ A ) ) ).

% diff_ge_0_iff_ge
thf(fact_1189_diff__ge__0__iff__ge,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( minus_minus_int @ A @ B ) )
      = ( ord_less_eq_int @ B @ A ) ) ).

% diff_ge_0_iff_ge
thf(fact_1190_neg__0__le__iff__le,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% neg_0_le_iff_le
thf(fact_1191_neg__0__le__iff__le,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% neg_0_le_iff_le
thf(fact_1192_neg__0__le__iff__le,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( uminus_uminus_int @ A ) )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% neg_0_le_iff_le
thf(fact_1193_neg__le__0__iff__le,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ zero_z3403309356797280102nteger )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% neg_le_0_iff_le
thf(fact_1194_neg__le__0__iff__le,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ zero_zero_rat )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% neg_le_0_iff_le
thf(fact_1195_neg__le__0__iff__le,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ zero_zero_int )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% neg_le_0_iff_le
thf(fact_1196_less__eq__neg__nonpos,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% less_eq_neg_nonpos
thf(fact_1197_less__eq__neg__nonpos,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ A @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% less_eq_neg_nonpos
thf(fact_1198_less__eq__neg__nonpos,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ A @ ( uminus_uminus_int @ A ) )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% less_eq_neg_nonpos
thf(fact_1199_neg__less__eq__nonneg,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ A )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% neg_less_eq_nonneg
thf(fact_1200_neg__less__eq__nonneg,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ A )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% neg_less_eq_nonneg
thf(fact_1201_neg__less__eq__nonneg,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ A )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% neg_less_eq_nonneg
thf(fact_1202_diff__gt__0__iff__gt,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( ord_le6747313008572928689nteger @ B @ A ) ) ).

% diff_gt_0_iff_gt
thf(fact_1203_diff__gt__0__iff__gt,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( minus_minus_rat @ A @ B ) )
      = ( ord_less_rat @ B @ A ) ) ).

% diff_gt_0_iff_gt
thf(fact_1204_diff__gt__0__iff__gt,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ ( minus_minus_int @ A @ B ) )
      = ( ord_less_int @ B @ A ) ) ).

% diff_gt_0_iff_gt
thf(fact_1205_le__add__diff__inverse2,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_1206_le__add__diff__inverse2,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( plus_plus_rat @ ( minus_minus_rat @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_1207_le__add__diff__inverse2,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_1208_le__add__diff__inverse2,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_1209_le__add__diff__inverse,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ( plus_p5714425477246183910nteger @ B @ ( minus_8373710615458151222nteger @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_1210_le__add__diff__inverse,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( plus_plus_rat @ B @ ( minus_minus_rat @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_1211_le__add__diff__inverse,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_1212_le__add__diff__inverse,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( plus_plus_int @ B @ ( minus_minus_int @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_1213_diff__add__zero,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( minus_7197305767214868737atural @ A @ ( plus_p4538020629002901425atural @ A @ B ) )
      = zero_z2226904508553997617atural ) ).

% diff_add_zero
thf(fact_1214_diff__add__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = zero_zero_nat ) ).

% diff_add_zero
thf(fact_1215_diff__numeral__special_I9_J,axiom,
    ( ( minus_minus_int @ one_one_int @ one_one_int )
    = zero_zero_int ) ).

% diff_numeral_special(9)
thf(fact_1216_diff__numeral__special_I9_J,axiom,
    ( ( minus_8373710615458151222nteger @ one_one_Code_integer @ one_one_Code_integer )
    = zero_z3403309356797280102nteger ) ).

% diff_numeral_special(9)
thf(fact_1217_diff__numeral__special_I9_J,axiom,
    ( ( minus_minus_rat @ one_one_rat @ one_one_rat )
    = zero_zero_rat ) ).

% diff_numeral_special(9)
thf(fact_1218_verit__minus__simplify_I3_J,axiom,
    ! [B: int] :
      ( ( minus_minus_int @ zero_zero_int @ B )
      = ( uminus_uminus_int @ B ) ) ).

% verit_minus_simplify(3)
thf(fact_1219_verit__minus__simplify_I3_J,axiom,
    ! [B: code_integer] :
      ( ( minus_8373710615458151222nteger @ zero_z3403309356797280102nteger @ B )
      = ( uminus1351360451143612070nteger @ B ) ) ).

% verit_minus_simplify(3)
thf(fact_1220_verit__minus__simplify_I3_J,axiom,
    ! [B: rat] :
      ( ( minus_minus_rat @ zero_zero_rat @ B )
      = ( uminus_uminus_rat @ B ) ) ).

% verit_minus_simplify(3)
thf(fact_1221_diff__0,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ zero_zero_int @ A )
      = ( uminus_uminus_int @ A ) ) ).

% diff_0
thf(fact_1222_diff__0,axiom,
    ! [A: code_integer] :
      ( ( minus_8373710615458151222nteger @ zero_z3403309356797280102nteger @ A )
      = ( uminus1351360451143612070nteger @ A ) ) ).

% diff_0
thf(fact_1223_diff__0,axiom,
    ! [A: rat] :
      ( ( minus_minus_rat @ zero_zero_rat @ A )
      = ( uminus_uminus_rat @ A ) ) ).

% diff_0
thf(fact_1224_diff__minus__eq__add,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ A @ ( uminus_uminus_int @ B ) )
      = ( plus_plus_int @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_1225_diff__minus__eq__add,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ ( uminus1351360451143612070nteger @ B ) )
      = ( plus_p5714425477246183910nteger @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_1226_diff__minus__eq__add,axiom,
    ! [A: rat,B: rat] :
      ( ( minus_minus_rat @ A @ ( uminus_uminus_rat @ B ) )
      = ( plus_plus_rat @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_1227_uminus__add__conv__diff,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ B )
      = ( minus_minus_int @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_1228_uminus__add__conv__diff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
      = ( minus_8373710615458151222nteger @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_1229_uminus__add__conv__diff,axiom,
    ! [A: rat,B: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ B )
      = ( minus_minus_rat @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_1230_abs__of__nonneg,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( abs_abs_Code_integer @ A )
        = A ) ) ).

% abs_of_nonneg
thf(fact_1231_abs__of__nonneg,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( abs_abs_rat @ A )
        = A ) ) ).

% abs_of_nonneg
thf(fact_1232_abs__of__nonneg,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( abs_abs_int @ A )
        = A ) ) ).

% abs_of_nonneg
thf(fact_1233_abs__le__self__iff,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ A )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% abs_le_self_iff
thf(fact_1234_abs__le__self__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ A )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% abs_le_self_iff
thf(fact_1235_abs__le__self__iff,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ A ) @ A )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% abs_le_self_iff
thf(fact_1236_abs__le__zero__iff,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% abs_le_zero_iff
thf(fact_1237_abs__le__zero__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% abs_le_zero_iff
thf(fact_1238_abs__le__zero__iff,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ A ) @ zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% abs_le_zero_iff
thf(fact_1239_power__inject__exp,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ( ( power_8256067586552552935nteger @ A @ M )
          = ( power_8256067586552552935nteger @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_1240_power__inject__exp,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ( ( power_7079662738309270450atural @ A @ M )
          = ( power_7079662738309270450atural @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_1241_power__inject__exp,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ( power_power_rat @ A @ M )
          = ( power_power_rat @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_1242_power__inject__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ( power_power_nat @ A @ M )
          = ( power_power_nat @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_1243_power__inject__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ( power_power_int @ A @ M )
          = ( power_power_int @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_1244_zero__less__of__bool__iff,axiom,
    ! [P: $o] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( zero_n356916108424825756nteger @ P ) )
      = P ) ).

% zero_less_of_bool_iff
thf(fact_1245_zero__less__of__bool__iff,axiom,
    ! [P: $o] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( zero_n8403883297036319079atural @ P ) )
      = P ) ).

% zero_less_of_bool_iff
thf(fact_1246_zero__less__of__bool__iff,axiom,
    ! [P: $o] :
      ( ( ord_less_rat @ zero_zero_rat @ ( zero_n2052037380579107095ol_rat @ P ) )
      = P ) ).

% zero_less_of_bool_iff
thf(fact_1247_zero__less__of__bool__iff,axiom,
    ! [P: $o] :
      ( ( ord_less_int @ zero_zero_int @ ( zero_n2684676970156552555ol_int @ P ) )
      = P ) ).

% zero_less_of_bool_iff
thf(fact_1248_zero__less__of__bool__iff,axiom,
    ! [P: $o] :
      ( ( ord_less_nat @ zero_zero_nat @ ( zero_n2687167440665602831ol_nat @ P ) )
      = P ) ).

% zero_less_of_bool_iff
thf(fact_1249_of__bool__less__one__iff,axiom,
    ! [P: $o] :
      ( ( ord_le6747313008572928689nteger @ ( zero_n356916108424825756nteger @ P ) @ one_one_Code_integer )
      = ~ P ) ).

% of_bool_less_one_iff
thf(fact_1250_of__bool__less__one__iff,axiom,
    ! [P: $o] :
      ( ( ord_le5570908160329646204atural @ ( zero_n8403883297036319079atural @ P ) @ one_one_Code_natural )
      = ~ P ) ).

% of_bool_less_one_iff
thf(fact_1251_of__bool__less__one__iff,axiom,
    ! [P: $o] :
      ( ( ord_less_rat @ ( zero_n2052037380579107095ol_rat @ P ) @ one_one_rat )
      = ~ P ) ).

% of_bool_less_one_iff
thf(fact_1252_of__bool__less__one__iff,axiom,
    ! [P: $o] :
      ( ( ord_less_int @ ( zero_n2684676970156552555ol_int @ P ) @ one_one_int )
      = ~ P ) ).

% of_bool_less_one_iff
thf(fact_1253_of__bool__less__one__iff,axiom,
    ! [P: $o] :
      ( ( ord_less_nat @ ( zero_n2687167440665602831ol_nat @ P ) @ one_one_nat )
      = ~ P ) ).

% of_bool_less_one_iff
thf(fact_1254_of__bool__not__iff,axiom,
    ! [P: $o] :
      ( ( zero_n356916108424825756nteger @ ~ P )
      = ( minus_8373710615458151222nteger @ one_one_Code_integer @ ( zero_n356916108424825756nteger @ P ) ) ) ).

% of_bool_not_iff
thf(fact_1255_of__bool__not__iff,axiom,
    ! [P: $o] :
      ( ( zero_n2052037380579107095ol_rat @ ~ P )
      = ( minus_minus_rat @ one_one_rat @ ( zero_n2052037380579107095ol_rat @ P ) ) ) ).

% of_bool_not_iff
thf(fact_1256_of__bool__not__iff,axiom,
    ! [P: $o] :
      ( ( zero_n2684676970156552555ol_int @ ~ P )
      = ( minus_minus_int @ one_one_int @ ( zero_n2684676970156552555ol_int @ P ) ) ) ).

% of_bool_not_iff
thf(fact_1257_zabs__less__one__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ ( abs_abs_int @ Z ) @ one_one_int )
      = ( Z = zero_zero_int ) ) ).

% zabs_less_one_iff
thf(fact_1258_zle__add1__eq__le,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_int @ W @ ( plus_plus_int @ Z @ one_one_int ) )
      = ( ord_less_eq_int @ W @ Z ) ) ).

% zle_add1_eq_le
thf(fact_1259_power__increasing__iff,axiom,
    ! [B: code_integer,X: nat,Y3: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ B )
     => ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ B @ X ) @ ( power_8256067586552552935nteger @ B @ Y3 ) )
        = ( ord_less_eq_nat @ X @ Y3 ) ) ) ).

% power_increasing_iff
thf(fact_1260_power__increasing__iff,axiom,
    ! [B: code_natural,X: nat,Y3: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ B )
     => ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ B @ X ) @ ( power_7079662738309270450atural @ B @ Y3 ) )
        = ( ord_less_eq_nat @ X @ Y3 ) ) ) ).

% power_increasing_iff
thf(fact_1261_power__increasing__iff,axiom,
    ! [B: rat,X: nat,Y3: nat] :
      ( ( ord_less_rat @ one_one_rat @ B )
     => ( ( ord_less_eq_rat @ ( power_power_rat @ B @ X ) @ ( power_power_rat @ B @ Y3 ) )
        = ( ord_less_eq_nat @ X @ Y3 ) ) ) ).

% power_increasing_iff
thf(fact_1262_power__increasing__iff,axiom,
    ! [B: nat,X: nat,Y3: nat] :
      ( ( ord_less_nat @ one_one_nat @ B )
     => ( ( ord_less_eq_nat @ ( power_power_nat @ B @ X ) @ ( power_power_nat @ B @ Y3 ) )
        = ( ord_less_eq_nat @ X @ Y3 ) ) ) ).

% power_increasing_iff
thf(fact_1263_power__increasing__iff,axiom,
    ! [B: int,X: nat,Y3: nat] :
      ( ( ord_less_int @ one_one_int @ B )
     => ( ( ord_less_eq_int @ ( power_power_int @ B @ X ) @ ( power_power_int @ B @ Y3 ) )
        = ( ord_less_eq_nat @ X @ Y3 ) ) ) ).

% power_increasing_iff
thf(fact_1264_diff__numeral__special_I12_J,axiom,
    ( ( minus_minus_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ one_one_int ) )
    = zero_zero_int ) ).

% diff_numeral_special(12)
thf(fact_1265_diff__numeral__special_I12_J,axiom,
    ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = zero_z3403309356797280102nteger ) ).

% diff_numeral_special(12)
thf(fact_1266_diff__numeral__special_I12_J,axiom,
    ( ( minus_minus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( uminus_uminus_rat @ one_one_rat ) )
    = zero_zero_rat ) ).

% diff_numeral_special(12)
thf(fact_1267_of__nat__le__0__iff,axiom,
    ! [M: nat] :
      ( ( ord_le3102999989581377725nteger @ ( semiri4939895301339042750nteger @ M ) @ zero_z3403309356797280102nteger )
      = ( M = zero_zero_nat ) ) ).

% of_nat_le_0_iff
thf(fact_1268_of__nat__le__0__iff,axiom,
    ! [M: nat] :
      ( ( ord_le1926595141338095240atural @ ( semiri3763490453095760265atural @ M ) @ zero_z2226904508553997617atural )
      = ( M = zero_zero_nat ) ) ).

% of_nat_le_0_iff
thf(fact_1269_of__nat__le__0__iff,axiom,
    ! [M: nat] :
      ( ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ M ) @ zero_zero_rat )
      = ( M = zero_zero_nat ) ) ).

% of_nat_le_0_iff
thf(fact_1270_of__nat__le__0__iff,axiom,
    ! [M: nat] :
      ( ( ord_less_eq_nat @ ( semiri1316708129612266289at_nat @ M ) @ zero_zero_nat )
      = ( M = zero_zero_nat ) ) ).

% of_nat_le_0_iff
thf(fact_1271_of__nat__le__0__iff,axiom,
    ! [M: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ M ) @ zero_zero_int )
      = ( M = zero_zero_nat ) ) ).

% of_nat_le_0_iff
thf(fact_1272_power__strict__increasing__iff,axiom,
    ! [B: code_integer,X: nat,Y3: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ B )
     => ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ B @ X ) @ ( power_8256067586552552935nteger @ B @ Y3 ) )
        = ( ord_less_nat @ X @ Y3 ) ) ) ).

% power_strict_increasing_iff
thf(fact_1273_power__strict__increasing__iff,axiom,
    ! [B: code_natural,X: nat,Y3: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ B )
     => ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ B @ X ) @ ( power_7079662738309270450atural @ B @ Y3 ) )
        = ( ord_less_nat @ X @ Y3 ) ) ) ).

% power_strict_increasing_iff
thf(fact_1274_power__strict__increasing__iff,axiom,
    ! [B: rat,X: nat,Y3: nat] :
      ( ( ord_less_rat @ one_one_rat @ B )
     => ( ( ord_less_rat @ ( power_power_rat @ B @ X ) @ ( power_power_rat @ B @ Y3 ) )
        = ( ord_less_nat @ X @ Y3 ) ) ) ).

% power_strict_increasing_iff
thf(fact_1275_power__strict__increasing__iff,axiom,
    ! [B: nat,X: nat,Y3: nat] :
      ( ( ord_less_nat @ one_one_nat @ B )
     => ( ( ord_less_nat @ ( power_power_nat @ B @ X ) @ ( power_power_nat @ B @ Y3 ) )
        = ( ord_less_nat @ X @ Y3 ) ) ) ).

% power_strict_increasing_iff
thf(fact_1276_power__strict__increasing__iff,axiom,
    ! [B: int,X: nat,Y3: nat] :
      ( ( ord_less_int @ one_one_int @ B )
     => ( ( ord_less_int @ ( power_power_int @ B @ X ) @ ( power_power_int @ B @ Y3 ) )
        = ( ord_less_nat @ X @ Y3 ) ) ) ).

% power_strict_increasing_iff
thf(fact_1277_power__eq__0__iff,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ( power_8256067586552552935nteger @ A @ N )
        = zero_z3403309356797280102nteger )
      = ( ( A = zero_z3403309356797280102nteger )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% power_eq_0_iff
thf(fact_1278_power__eq__0__iff,axiom,
    ! [A: rat,N: nat] :
      ( ( ( power_power_rat @ A @ N )
        = zero_zero_rat )
      = ( ( A = zero_zero_rat )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% power_eq_0_iff
thf(fact_1279_power__eq__0__iff,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ( power_7079662738309270450atural @ A @ N )
        = zero_z2226904508553997617atural )
      = ( ( A = zero_z2226904508553997617atural )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% power_eq_0_iff
thf(fact_1280_power__eq__0__iff,axiom,
    ! [A: nat,N: nat] :
      ( ( ( power_power_nat @ A @ N )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% power_eq_0_iff
thf(fact_1281_power__eq__0__iff,axiom,
    ! [A: int,N: nat] :
      ( ( ( power_power_int @ A @ N )
        = zero_zero_int )
      = ( ( A = zero_zero_int )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% power_eq_0_iff
thf(fact_1282_idom__abs__sgn__class_Oabs__sgn,axiom,
    ! [A: code_integer] :
      ( ( sgn_sgn_Code_integer @ ( abs_abs_Code_integer @ A ) )
      = ( zero_n356916108424825756nteger @ ( A != zero_z3403309356797280102nteger ) ) ) ).

% idom_abs_sgn_class.abs_sgn
thf(fact_1283_idom__abs__sgn__class_Oabs__sgn,axiom,
    ! [A: rat] :
      ( ( sgn_sgn_rat @ ( abs_abs_rat @ A ) )
      = ( zero_n2052037380579107095ol_rat @ ( A != zero_zero_rat ) ) ) ).

% idom_abs_sgn_class.abs_sgn
thf(fact_1284_idom__abs__sgn__class_Oabs__sgn,axiom,
    ! [A: int] :
      ( ( sgn_sgn_int @ ( abs_abs_int @ A ) )
      = ( zero_n2684676970156552555ol_int @ ( A != zero_zero_int ) ) ) ).

% idom_abs_sgn_class.abs_sgn
thf(fact_1285_sgn__abs,axiom,
    ! [A: code_integer] :
      ( ( abs_abs_Code_integer @ ( sgn_sgn_Code_integer @ A ) )
      = ( zero_n356916108424825756nteger @ ( A != zero_z3403309356797280102nteger ) ) ) ).

% sgn_abs
thf(fact_1286_sgn__abs,axiom,
    ! [A: rat] :
      ( ( abs_abs_rat @ ( sgn_sgn_rat @ A ) )
      = ( zero_n2052037380579107095ol_rat @ ( A != zero_zero_rat ) ) ) ).

% sgn_abs
thf(fact_1287_sgn__abs,axiom,
    ! [A: int] :
      ( ( abs_abs_int @ ( sgn_sgn_int @ A ) )
      = ( zero_n2684676970156552555ol_int @ ( A != zero_zero_int ) ) ) ).

% sgn_abs
thf(fact_1288_power__decreasing__iff,axiom,
    ! [B: code_integer,M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ( ord_le6747313008572928689nteger @ B @ one_one_Code_integer )
       => ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ B @ M ) @ ( power_8256067586552552935nteger @ B @ N ) )
          = ( ord_less_eq_nat @ N @ M ) ) ) ) ).

% power_decreasing_iff
thf(fact_1289_power__decreasing__iff,axiom,
    ! [B: code_natural,M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
     => ( ( ord_le5570908160329646204atural @ B @ one_one_Code_natural )
       => ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ B @ M ) @ ( power_7079662738309270450atural @ B @ N ) )
          = ( ord_less_eq_nat @ N @ M ) ) ) ) ).

% power_decreasing_iff
thf(fact_1290_power__decreasing__iff,axiom,
    ! [B: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ B )
     => ( ( ord_less_rat @ B @ one_one_rat )
       => ( ( ord_less_eq_rat @ ( power_power_rat @ B @ M ) @ ( power_power_rat @ B @ N ) )
          = ( ord_less_eq_nat @ N @ M ) ) ) ) ).

% power_decreasing_iff
thf(fact_1291_power__decreasing__iff,axiom,
    ! [B: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ( ord_less_nat @ B @ one_one_nat )
       => ( ( ord_less_eq_nat @ ( power_power_nat @ B @ M ) @ ( power_power_nat @ B @ N ) )
          = ( ord_less_eq_nat @ N @ M ) ) ) ) ).

% power_decreasing_iff
thf(fact_1292_power__decreasing__iff,axiom,
    ! [B: int,M: nat,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_int @ B @ one_one_int )
       => ( ( ord_less_eq_int @ ( power_power_int @ B @ M ) @ ( power_power_int @ B @ N ) )
          = ( ord_less_eq_nat @ N @ M ) ) ) ) ).

% power_decreasing_iff
thf(fact_1293_power__strict__decreasing__iff,axiom,
    ! [B: code_integer,M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ( ord_le6747313008572928689nteger @ B @ one_one_Code_integer )
       => ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ B @ M ) @ ( power_8256067586552552935nteger @ B @ N ) )
          = ( ord_less_nat @ N @ M ) ) ) ) ).

% power_strict_decreasing_iff
thf(fact_1294_power__strict__decreasing__iff,axiom,
    ! [B: code_natural,M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
     => ( ( ord_le5570908160329646204atural @ B @ one_one_Code_natural )
       => ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ B @ M ) @ ( power_7079662738309270450atural @ B @ N ) )
          = ( ord_less_nat @ N @ M ) ) ) ) ).

% power_strict_decreasing_iff
thf(fact_1295_power__strict__decreasing__iff,axiom,
    ! [B: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ B )
     => ( ( ord_less_rat @ B @ one_one_rat )
       => ( ( ord_less_rat @ ( power_power_rat @ B @ M ) @ ( power_power_rat @ B @ N ) )
          = ( ord_less_nat @ N @ M ) ) ) ) ).

% power_strict_decreasing_iff
thf(fact_1296_power__strict__decreasing__iff,axiom,
    ! [B: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ( ord_less_nat @ B @ one_one_nat )
       => ( ( ord_less_nat @ ( power_power_nat @ B @ M ) @ ( power_power_nat @ B @ N ) )
          = ( ord_less_nat @ N @ M ) ) ) ) ).

% power_strict_decreasing_iff
thf(fact_1297_power__strict__decreasing__iff,axiom,
    ! [B: int,M: nat,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_int @ B @ one_one_int )
       => ( ( ord_less_int @ ( power_power_int @ B @ M ) @ ( power_power_int @ B @ N ) )
          = ( ord_less_nat @ N @ M ) ) ) ) ).

% power_strict_decreasing_iff
thf(fact_1298_power__mono__iff,axiom,
    ! [A: code_integer,B: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ B @ N ) )
            = ( ord_le3102999989581377725nteger @ A @ B ) ) ) ) ) ).

% power_mono_iff
thf(fact_1299_power__mono__iff,axiom,
    ! [A: code_natural,B: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ B @ N ) )
            = ( ord_le1926595141338095240atural @ A @ B ) ) ) ) ) ).

% power_mono_iff
thf(fact_1300_power__mono__iff,axiom,
    ! [A: rat,B: rat,N: nat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ( ord_less_eq_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ B @ N ) )
            = ( ord_less_eq_rat @ A @ B ) ) ) ) ) ).

% power_mono_iff
thf(fact_1301_power__mono__iff,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ( ord_less_eq_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) )
            = ( ord_less_eq_nat @ A @ B ) ) ) ) ) ).

% power_mono_iff
thf(fact_1302_power__mono__iff,axiom,
    ! [A: int,B: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ( ord_less_eq_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) )
            = ( ord_less_eq_int @ A @ B ) ) ) ) ) ).

% power_mono_iff
thf(fact_1303_zero__less__power__abs__iff,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ ( abs_abs_Code_integer @ A ) @ N ) )
      = ( ( A != zero_z3403309356797280102nteger )
        | ( N = zero_zero_nat ) ) ) ).

% zero_less_power_abs_iff
thf(fact_1304_zero__less__power__abs__iff,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( power_power_rat @ ( abs_abs_rat @ A ) @ N ) )
      = ( ( A != zero_zero_rat )
        | ( N = zero_zero_nat ) ) ) ).

% zero_less_power_abs_iff
thf(fact_1305_zero__less__power__abs__iff,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ ( power_power_int @ ( abs_abs_int @ A ) @ N ) )
      = ( ( A != zero_zero_int )
        | ( N = zero_zero_nat ) ) ) ).

% zero_less_power_abs_iff
thf(fact_1306_nonpos__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ K @ zero_zero_int )
     => ~ ! [N2: nat] :
            ( K
           != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ).

% nonpos_int_cases
thf(fact_1307_negative__zle__0,axiom,
    ! [N: nat] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ zero_zero_int ) ).

% negative_zle_0
thf(fact_1308_zabs__def,axiom,
    ( abs_abs_int
    = ( ^ [I2: int] : ( if_int @ ( ord_less_int @ I2 @ zero_zero_int ) @ ( uminus_uminus_int @ I2 ) @ I2 ) ) ) ).

% zabs_def
thf(fact_1309_uminus__int__code_I1_J,axiom,
    ( ( uminus_uminus_int @ zero_zero_int )
    = zero_zero_int ) ).

% uminus_int_code(1)
thf(fact_1310_minus__int__code_I2_J,axiom,
    ! [L: int] :
      ( ( minus_minus_int @ zero_zero_int @ L )
      = ( uminus_uminus_int @ L ) ) ).

% minus_int_code(2)
thf(fact_1311_less__int__code_I1_J,axiom,
    ~ ( ord_less_int @ zero_zero_int @ zero_zero_int ) ).

% less_int_code(1)
thf(fact_1312_int__cases2,axiom,
    ! [Z: int] :
      ( ! [N2: nat] :
          ( Z
         != ( semiri1314217659103216013at_int @ N2 ) )
     => ~ ! [N2: nat] :
            ( Z
           != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ).

% int_cases2
thf(fact_1313_not__int__zless__negative,axiom,
    ! [N: nat,M: nat] :
      ~ ( ord_less_int @ ( semiri1314217659103216013at_int @ N ) @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ M ) ) ) ).

% not_int_zless_negative
thf(fact_1314_power__le__imp__le__exp,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_1315_power__le__imp__le__exp,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ M ) @ ( power_7079662738309270450atural @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_1316_power__le__imp__le__exp,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ord_less_eq_rat @ ( power_power_rat @ A @ M ) @ ( power_power_rat @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_1317_power__le__imp__le__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ord_less_eq_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_1318_power__le__imp__le__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ord_less_eq_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_1319_int__ops_I6_J,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) )
       => ( ( semiri1314217659103216013at_int @ ( minus_minus_nat @ A @ B ) )
          = zero_zero_int ) )
      & ( ~ ( ord_less_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) )
       => ( ( semiri1314217659103216013at_int @ ( minus_minus_nat @ A @ B ) )
          = ( minus_minus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ) ) ).

% int_ops(6)
thf(fact_1320_zsgn__def,axiom,
    ( sgn_sgn_int
    = ( ^ [I2: int] : ( if_int @ ( I2 = zero_zero_int ) @ zero_zero_int @ ( if_int @ ( ord_less_int @ zero_zero_int @ I2 ) @ one_one_int @ ( uminus_uminus_int @ one_one_int ) ) ) ) ) ).

% zsgn_def
thf(fact_1321_add1__zle__eq,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ W @ one_one_int ) @ Z )
      = ( ord_less_int @ W @ Z ) ) ).

% add1_zle_eq
thf(fact_1322_int__gr__induct,axiom,
    ! [K: int,I: int,P: int > $o] :
      ( ( ord_less_int @ K @ I )
     => ( ( P @ ( plus_plus_int @ K @ one_one_int ) )
       => ( ! [I3: int] :
              ( ( ord_less_int @ K @ I3 )
             => ( ( P @ I3 )
               => ( P @ ( plus_plus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I ) ) ) ) ).

% int_gr_induct
thf(fact_1323_le__imp__0__less,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ one_one_int @ Z ) ) ) ).

% le_imp_0_less
thf(fact_1324_zless__add1__eq,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_int @ W @ ( plus_plus_int @ Z @ one_one_int ) )
      = ( ( ord_less_int @ W @ Z )
        | ( W = Z ) ) ) ).

% zless_add1_eq
thf(fact_1325_odd__less__0__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ ( plus_plus_int @ ( plus_plus_int @ one_one_int @ Z ) @ Z ) @ zero_zero_int )
      = ( ord_less_int @ Z @ zero_zero_int ) ) ).

% odd_less_0_iff
thf(fact_1326_int__less__induct,axiom,
    ! [I: int,K: int,P: int > $o] :
      ( ( ord_less_int @ I @ K )
     => ( ( P @ ( minus_minus_int @ K @ one_one_int ) )
       => ( ! [I3: int] :
              ( ( ord_less_int @ I3 @ K )
             => ( ( P @ I3 )
               => ( P @ ( minus_minus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I ) ) ) ) ).

% int_less_induct
thf(fact_1327_zless__imp__add1__zle,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_int @ W @ Z )
     => ( ord_less_eq_int @ ( plus_plus_int @ W @ one_one_int ) @ Z ) ) ).

% zless_imp_add1_zle
thf(fact_1328_int__one__le__iff__zero__less,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ one_one_int @ Z )
      = ( ord_less_int @ zero_zero_int @ Z ) ) ).

% int_one_le_iff_zero_less
thf(fact_1329_nat__leq__as__int,axiom,
    ( ord_less_eq_nat
    = ( ^ [A4: nat,B4: nat] : ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ).

% nat_leq_as_int
thf(fact_1330_int__if,axiom,
    ! [P: $o,A: nat,B: nat] :
      ( ( P
       => ( ( semiri1314217659103216013at_int @ ( if_nat @ P @ A @ B ) )
          = ( semiri1314217659103216013at_int @ A ) ) )
      & ( ~ P
       => ( ( semiri1314217659103216013at_int @ ( if_nat @ P @ A @ B ) )
          = ( semiri1314217659103216013at_int @ B ) ) ) ) ).

% int_if
thf(fact_1331_nat__int__comparison_I1_J,axiom,
    ( ( ^ [Y5: nat,Z2: nat] : Y5 = Z2 )
    = ( ^ [A4: nat,B4: nat] :
          ( ( semiri1314217659103216013at_int @ A4 )
          = ( semiri1314217659103216013at_int @ B4 ) ) ) ) ).

% nat_int_comparison(1)
thf(fact_1332_nat__int__comparison_I3_J,axiom,
    ( ord_less_eq_nat
    = ( ^ [A4: nat,B4: nat] : ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ).

% nat_int_comparison(3)
thf(fact_1333_int__diff__cases,axiom,
    ! [Z: int] :
      ~ ! [M4: nat,N2: nat] :
          ( Z
         != ( minus_minus_int @ ( semiri1314217659103216013at_int @ M4 ) @ ( semiri1314217659103216013at_int @ N2 ) ) ) ).

% int_diff_cases
thf(fact_1334_int__int__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = ( semiri1314217659103216013at_int @ N ) )
      = ( M = N ) ) ).

% int_int_eq
thf(fact_1335_zle__int,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% zle_int
thf(fact_1336_of__nat__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri4939895301339042750nteger @ ( minus_minus_nat @ M @ N ) )
        = ( minus_8373710615458151222nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) ) ) ).

% of_nat_diff
thf(fact_1337_of__nat__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri681578069525770553at_rat @ ( minus_minus_nat @ M @ N ) )
        = ( minus_minus_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) ) ) ) ).

% of_nat_diff
thf(fact_1338_of__nat__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri1314217659103216013at_int @ ( minus_minus_nat @ M @ N ) )
        = ( minus_minus_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) ) ) ).

% of_nat_diff
thf(fact_1339_of__nat__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri1316708129612266289at_nat @ ( minus_minus_nat @ M @ N ) )
        = ( minus_minus_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ) ).

% of_nat_diff
thf(fact_1340_zle__iff__zadd,axiom,
    ( ord_less_eq_int
    = ( ^ [W2: int,Z3: int] :
        ? [N5: nat] :
          ( Z3
          = ( plus_plus_int @ W2 @ ( semiri1314217659103216013at_int @ N5 ) ) ) ) ) ).

% zle_iff_zadd
thf(fact_1341_nonneg__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ~ ! [N2: nat] :
            ( K
           != ( semiri1314217659103216013at_int @ N2 ) ) ) ).

% nonneg_int_cases
thf(fact_1342_zero__le__imp__eq__int,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ? [N2: nat] :
          ( K
          = ( semiri1314217659103216013at_int @ N2 ) ) ) ).

% zero_le_imp_eq_int
thf(fact_1343_zero__le__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% zero_le_power
thf(fact_1344_zero__le__power,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( power_7079662738309270450atural @ A @ N ) ) ) ).

% zero_le_power
thf(fact_1345_zero__le__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ A @ N ) ) ) ).

% zero_le_power
thf(fact_1346_zero__le__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ord_less_eq_nat @ zero_zero_nat @ ( power_power_nat @ A @ N ) ) ) ).

% zero_le_power
thf(fact_1347_zero__le__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ A @ N ) ) ) ).

% zero_le_power
thf(fact_1348_power__mono,axiom,
    ! [A: code_integer,B: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ B @ N ) ) ) ) ).

% power_mono
thf(fact_1349_power__mono,axiom,
    ! [A: code_natural,B: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ B @ N ) ) ) ) ).

% power_mono
thf(fact_1350_power__mono,axiom,
    ! [A: rat,B: rat,N: nat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ord_less_eq_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ B @ N ) ) ) ) ).

% power_mono
thf(fact_1351_power__mono,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ord_less_eq_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) ) ) ) ).

% power_mono
thf(fact_1352_power__mono,axiom,
    ! [A: int,B: int,N: nat] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ord_less_eq_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) ) ) ) ).

% power_mono
thf(fact_1353_less__eq__int__code_I1_J,axiom,
    ord_less_eq_int @ zero_zero_int @ zero_zero_int ).

% less_eq_int_code(1)
thf(fact_1354_minus__int__code_I1_J,axiom,
    ! [K: int] :
      ( ( minus_minus_int @ K @ zero_zero_int )
      = K ) ).

% minus_int_code(1)
thf(fact_1355_diff__eq__diff__eq,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_1356_diff__eq__diff__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ( minus_8373710615458151222nteger @ A @ B )
        = ( minus_8373710615458151222nteger @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_1357_diff__eq__diff__eq,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ( minus_minus_rat @ A @ B )
        = ( minus_minus_rat @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_1358_diff__mono,axiom,
    ! [A: code_integer,B: code_integer,D: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ D @ C )
       => ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ ( minus_8373710615458151222nteger @ B @ D ) ) ) ) ).

% diff_mono
thf(fact_1359_diff__mono,axiom,
    ! [A: rat,B: rat,D: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ D @ C )
       => ( ord_less_eq_rat @ ( minus_minus_rat @ A @ C ) @ ( minus_minus_rat @ B @ D ) ) ) ) ).

% diff_mono
thf(fact_1360_diff__mono,axiom,
    ! [A: int,B: int,D: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ D @ C )
       => ( ord_less_eq_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ D ) ) ) ) ).

% diff_mono
thf(fact_1361_diff__left__mono,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ C @ A ) @ ( minus_8373710615458151222nteger @ C @ B ) ) ) ).

% diff_left_mono
thf(fact_1362_diff__left__mono,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ord_less_eq_rat @ ( minus_minus_rat @ C @ A ) @ ( minus_minus_rat @ C @ B ) ) ) ).

% diff_left_mono
thf(fact_1363_diff__left__mono,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ord_less_eq_int @ ( minus_minus_int @ C @ A ) @ ( minus_minus_int @ C @ B ) ) ) ).

% diff_left_mono
thf(fact_1364_diff__right__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ ( minus_8373710615458151222nteger @ B @ C ) ) ) ).

% diff_right_mono
thf(fact_1365_diff__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ord_less_eq_rat @ ( minus_minus_rat @ A @ C ) @ ( minus_minus_rat @ B @ C ) ) ) ).

% diff_right_mono
thf(fact_1366_diff__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ C ) ) ) ).

% diff_right_mono
thf(fact_1367_diff__eq__diff__less__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ( minus_8373710615458151222nteger @ A @ B )
        = ( minus_8373710615458151222nteger @ C @ D ) )
     => ( ( ord_le3102999989581377725nteger @ A @ B )
        = ( ord_le3102999989581377725nteger @ C @ D ) ) ) ).

% diff_eq_diff_less_eq
thf(fact_1368_diff__eq__diff__less__eq,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ( minus_minus_rat @ A @ B )
        = ( minus_minus_rat @ C @ D ) )
     => ( ( ord_less_eq_rat @ A @ B )
        = ( ord_less_eq_rat @ C @ D ) ) ) ).

% diff_eq_diff_less_eq
thf(fact_1369_diff__eq__diff__less__eq,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( ord_less_eq_int @ A @ B )
        = ( ord_less_eq_int @ C @ D ) ) ) ).

% diff_eq_diff_less_eq
thf(fact_1370_diff__right__commute,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ C ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C ) ) ).

% diff_right_commute
thf(fact_1371_diff__right__commute,axiom,
    ! [A: int,C: int,B: int] :
      ( ( minus_minus_int @ ( minus_minus_int @ A @ C ) @ B )
      = ( minus_minus_int @ ( minus_minus_int @ A @ B ) @ C ) ) ).

% diff_right_commute
thf(fact_1372_diff__right__commute,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ B )
      = ( minus_8373710615458151222nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C ) ) ).

% diff_right_commute
thf(fact_1373_diff__right__commute,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( minus_minus_rat @ ( minus_minus_rat @ A @ C ) @ B )
      = ( minus_minus_rat @ ( minus_minus_rat @ A @ B ) @ C ) ) ).

% diff_right_commute
thf(fact_1374_power__increasing,axiom,
    ! [N: nat,N6: nat,A: code_integer] :
      ( ( ord_less_eq_nat @ N @ N6 )
     => ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ A )
       => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ A @ N6 ) ) ) ) ).

% power_increasing
thf(fact_1375_power__increasing,axiom,
    ! [N: nat,N6: nat,A: code_natural] :
      ( ( ord_less_eq_nat @ N @ N6 )
     => ( ( ord_le1926595141338095240atural @ one_one_Code_natural @ A )
       => ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ A @ N6 ) ) ) ) ).

% power_increasing
thf(fact_1376_power__increasing,axiom,
    ! [N: nat,N6: nat,A: rat] :
      ( ( ord_less_eq_nat @ N @ N6 )
     => ( ( ord_less_eq_rat @ one_one_rat @ A )
       => ( ord_less_eq_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ A @ N6 ) ) ) ) ).

% power_increasing
thf(fact_1377_power__increasing,axiom,
    ! [N: nat,N6: nat,A: nat] :
      ( ( ord_less_eq_nat @ N @ N6 )
     => ( ( ord_less_eq_nat @ one_one_nat @ A )
       => ( ord_less_eq_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ A @ N6 ) ) ) ) ).

% power_increasing
thf(fact_1378_power__increasing,axiom,
    ! [N: nat,N6: nat,A: int] :
      ( ( ord_less_eq_nat @ N @ N6 )
     => ( ( ord_less_eq_int @ one_one_int @ A )
       => ( ord_less_eq_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ A @ N6 ) ) ) ) ).

% power_increasing
thf(fact_1379_one__le__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ A )
     => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% one_le_power
thf(fact_1380_one__le__power,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ one_one_Code_natural @ A )
     => ( ord_le1926595141338095240atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ A @ N ) ) ) ).

% one_le_power
thf(fact_1381_one__le__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ one_one_rat @ A )
     => ( ord_less_eq_rat @ one_one_rat @ ( power_power_rat @ A @ N ) ) ) ).

% one_le_power
thf(fact_1382_one__le__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ A )
     => ( ord_less_eq_nat @ one_one_nat @ ( power_power_nat @ A @ N ) ) ) ).

% one_le_power
thf(fact_1383_one__le__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ one_one_int @ A )
     => ( ord_less_eq_int @ one_one_int @ ( power_power_int @ A @ N ) ) ) ).

% one_le_power
thf(fact_1384_verit__comp__simplify1_I2_J,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_1385_verit__comp__simplify1_I2_J,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_1386_verit__comp__simplify1_I2_J,axiom,
    ! [A: num] : ( ord_less_eq_num @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_1387_verit__comp__simplify1_I2_J,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_1388_verit__comp__simplify1_I2_J,axiom,
    ! [A: int] : ( ord_less_eq_int @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_1389_of__bool__eq__iff,axiom,
    ! [P4: $o,Q2: $o] :
      ( ( ( zero_n2684676970156552555ol_int @ P4 )
        = ( zero_n2684676970156552555ol_int @ Q2 ) )
      = ( P4 = Q2 ) ) ).

% of_bool_eq_iff
thf(fact_1390_of__bool__eq__iff,axiom,
    ! [P4: $o,Q2: $o] :
      ( ( ( zero_n2687167440665602831ol_nat @ P4 )
        = ( zero_n2687167440665602831ol_nat @ Q2 ) )
      = ( P4 = Q2 ) ) ).

% of_bool_eq_iff
thf(fact_1391_verit__la__disequality,axiom,
    ! [A: rat,B: rat] :
      ( ( A = B )
      | ~ ( ord_less_eq_rat @ A @ B )
      | ~ ( ord_less_eq_rat @ B @ A ) ) ).

% verit_la_disequality
thf(fact_1392_verit__la__disequality,axiom,
    ! [A: num,B: num] :
      ( ( A = B )
      | ~ ( ord_less_eq_num @ A @ B )
      | ~ ( ord_less_eq_num @ B @ A ) ) ).

% verit_la_disequality
thf(fact_1393_verit__la__disequality,axiom,
    ! [A: nat,B: nat] :
      ( ( A = B )
      | ~ ( ord_less_eq_nat @ A @ B )
      | ~ ( ord_less_eq_nat @ B @ A ) ) ).

% verit_la_disequality
thf(fact_1394_verit__la__disequality,axiom,
    ! [A: int,B: int] :
      ( ( A = B )
      | ~ ( ord_less_eq_int @ A @ B )
      | ~ ( ord_less_eq_int @ B @ A ) ) ).

% verit_la_disequality
thf(fact_1395_int__induct,axiom,
    ! [P: int > $o,K: int,I: int] :
      ( ( P @ K )
     => ( ! [I3: int] :
            ( ( ord_less_eq_int @ K @ I3 )
           => ( ( P @ I3 )
             => ( P @ ( plus_plus_int @ I3 @ one_one_int ) ) ) )
       => ( ! [I3: int] :
              ( ( ord_less_eq_int @ I3 @ K )
             => ( ( P @ I3 )
               => ( P @ ( minus_minus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I ) ) ) ) ).

% int_induct
thf(fact_1396_int__ge__induct,axiom,
    ! [K: int,I: int,P: int > $o] :
      ( ( ord_less_eq_int @ K @ I )
     => ( ( P @ K )
       => ( ! [I3: int] :
              ( ( ord_less_eq_int @ K @ I3 )
             => ( ( P @ I3 )
               => ( P @ ( plus_plus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I ) ) ) ) ).

% int_ge_induct
thf(fact_1397_int__le__induct,axiom,
    ! [I: int,K: int,P: int > $o] :
      ( ( ord_less_eq_int @ I @ K )
     => ( ( P @ K )
       => ( ! [I3: int] :
              ( ( ord_less_eq_int @ I3 @ K )
             => ( ( P @ I3 )
               => ( P @ ( minus_minus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I ) ) ) ) ).

% int_le_induct
thf(fact_1398_power__decreasing,axiom,
    ! [N: nat,N6: nat,A: code_integer] :
      ( ( ord_less_eq_nat @ N @ N6 )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer )
         => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N6 ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ) ).

% power_decreasing
thf(fact_1399_power__decreasing,axiom,
    ! [N: nat,N6: nat,A: code_natural] :
      ( ( ord_less_eq_nat @ N @ N6 )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_le1926595141338095240atural @ A @ one_one_Code_natural )
         => ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ N6 ) @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ) ).

% power_decreasing
thf(fact_1400_power__decreasing,axiom,
    ! [N: nat,N6: nat,A: rat] :
      ( ( ord_less_eq_nat @ N @ N6 )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_eq_rat @ A @ one_one_rat )
         => ( ord_less_eq_rat @ ( power_power_rat @ A @ N6 ) @ ( power_power_rat @ A @ N ) ) ) ) ) ).

% power_decreasing
thf(fact_1401_power__decreasing,axiom,
    ! [N: nat,N6: nat,A: nat] :
      ( ( ord_less_eq_nat @ N @ N6 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ( ord_less_eq_nat @ A @ one_one_nat )
         => ( ord_less_eq_nat @ ( power_power_nat @ A @ N6 ) @ ( power_power_nat @ A @ N ) ) ) ) ) ).

% power_decreasing
thf(fact_1402_power__decreasing,axiom,
    ! [N: nat,N6: nat,A: int] :
      ( ( ord_less_eq_nat @ N @ N6 )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ( ord_less_eq_int @ A @ one_one_int )
         => ( ord_less_eq_int @ ( power_power_int @ A @ N6 ) @ ( power_power_int @ A @ N ) ) ) ) ) ).

% power_decreasing
thf(fact_1403_zero__less__eq__of__bool,axiom,
    ! [P: $o] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( zero_n356916108424825756nteger @ P ) ) ).

% zero_less_eq_of_bool
thf(fact_1404_zero__less__eq__of__bool,axiom,
    ! [P: $o] : ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( zero_n8403883297036319079atural @ P ) ) ).

% zero_less_eq_of_bool
thf(fact_1405_zero__less__eq__of__bool,axiom,
    ! [P: $o] : ( ord_less_eq_rat @ zero_zero_rat @ ( zero_n2052037380579107095ol_rat @ P ) ) ).

% zero_less_eq_of_bool
thf(fact_1406_zero__less__eq__of__bool,axiom,
    ! [P: $o] : ( ord_less_eq_int @ zero_zero_int @ ( zero_n2684676970156552555ol_int @ P ) ) ).

% zero_less_eq_of_bool
thf(fact_1407_zero__less__eq__of__bool,axiom,
    ! [P: $o] : ( ord_less_eq_nat @ zero_zero_nat @ ( zero_n2687167440665602831ol_nat @ P ) ) ).

% zero_less_eq_of_bool
thf(fact_1408_le__iff__diff__le__0,axiom,
    ( ord_le3102999989581377725nteger
    = ( ^ [A4: code_integer,B4: code_integer] : ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ A4 @ B4 ) @ zero_z3403309356797280102nteger ) ) ) ).

% le_iff_diff_le_0
thf(fact_1409_le__iff__diff__le__0,axiom,
    ( ord_less_eq_rat
    = ( ^ [A4: rat,B4: rat] : ( ord_less_eq_rat @ ( minus_minus_rat @ A4 @ B4 ) @ zero_zero_rat ) ) ) ).

% le_iff_diff_le_0
thf(fact_1410_le__iff__diff__le__0,axiom,
    ( ord_less_eq_int
    = ( ^ [A4: int,B4: int] : ( ord_less_eq_int @ ( minus_minus_int @ A4 @ B4 ) @ zero_zero_int ) ) ) ).

% le_iff_diff_le_0
thf(fact_1411_of__bool__less__eq__one,axiom,
    ! [P: $o] : ( ord_le3102999989581377725nteger @ ( zero_n356916108424825756nteger @ P ) @ one_one_Code_integer ) ).

% of_bool_less_eq_one
thf(fact_1412_of__bool__less__eq__one,axiom,
    ! [P: $o] : ( ord_le1926595141338095240atural @ ( zero_n8403883297036319079atural @ P ) @ one_one_Code_natural ) ).

% of_bool_less_eq_one
thf(fact_1413_of__bool__less__eq__one,axiom,
    ! [P: $o] : ( ord_less_eq_rat @ ( zero_n2052037380579107095ol_rat @ P ) @ one_one_rat ) ).

% of_bool_less_eq_one
thf(fact_1414_of__bool__less__eq__one,axiom,
    ! [P: $o] : ( ord_less_eq_int @ ( zero_n2684676970156552555ol_int @ P ) @ one_one_int ) ).

% of_bool_less_eq_one
thf(fact_1415_of__bool__less__eq__one,axiom,
    ! [P: $o] : ( ord_less_eq_nat @ ( zero_n2687167440665602831ol_nat @ P ) @ one_one_nat ) ).

% of_bool_less_eq_one
thf(fact_1416_add__le__add__imp__diff__le,axiom,
    ! [I: code_integer,K: code_integer,N: code_integer,J: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ N )
     => ( ( ord_le3102999989581377725nteger @ N @ ( plus_p5714425477246183910nteger @ J @ K ) )
       => ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ N )
         => ( ( ord_le3102999989581377725nteger @ N @ ( plus_p5714425477246183910nteger @ J @ K ) )
           => ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_1417_add__le__add__imp__diff__le,axiom,
    ! [I: rat,K: rat,N: rat,J: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ N )
     => ( ( ord_less_eq_rat @ N @ ( plus_plus_rat @ J @ K ) )
       => ( ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ N )
         => ( ( ord_less_eq_rat @ N @ ( plus_plus_rat @ J @ K ) )
           => ( ord_less_eq_rat @ ( minus_minus_rat @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_1418_add__le__add__imp__diff__le,axiom,
    ! [I: nat,K: nat,N: nat,J: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
         => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
           => ( ord_less_eq_nat @ ( minus_minus_nat @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_1419_add__le__add__imp__diff__le,axiom,
    ! [I: int,K: int,N: int,J: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ N )
     => ( ( ord_less_eq_int @ N @ ( plus_plus_int @ J @ K ) )
       => ( ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ N )
         => ( ( ord_less_eq_int @ N @ ( plus_plus_int @ J @ K ) )
           => ( ord_less_eq_int @ ( minus_minus_int @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_1420_add__le__imp__le__diff,axiom,
    ! [I: code_integer,K: code_integer,N: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ N )
     => ( ord_le3102999989581377725nteger @ I @ ( minus_8373710615458151222nteger @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_1421_add__le__imp__le__diff,axiom,
    ! [I: rat,K: rat,N: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ N )
     => ( ord_less_eq_rat @ I @ ( minus_minus_rat @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_1422_add__le__imp__le__diff,axiom,
    ! [I: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
     => ( ord_less_eq_nat @ I @ ( minus_minus_nat @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_1423_add__le__imp__le__diff,axiom,
    ! [I: int,K: int,N: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ N )
     => ( ord_less_eq_int @ I @ ( minus_minus_int @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_1424_diff__le__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
      = ( ord_le3102999989581377725nteger @ A @ ( plus_p5714425477246183910nteger @ C @ B ) ) ) ).

% diff_le_eq
thf(fact_1425_diff__le__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ ( minus_minus_rat @ A @ B ) @ C )
      = ( ord_less_eq_rat @ A @ ( plus_plus_rat @ C @ B ) ) ) ).

% diff_le_eq
thf(fact_1426_diff__le__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( ord_less_eq_int @ A @ ( plus_plus_int @ C @ B ) ) ) ).

% diff_le_eq
thf(fact_1427_le__diff__eq,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( minus_8373710615458151222nteger @ C @ B ) )
      = ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% le_diff_eq
thf(fact_1428_le__diff__eq,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ ( minus_minus_rat @ C @ B ) )
      = ( ord_less_eq_rat @ ( plus_plus_rat @ A @ B ) @ C ) ) ).

% le_diff_eq
thf(fact_1429_le__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( minus_minus_int @ C @ B ) )
      = ( ord_less_eq_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% le_diff_eq
thf(fact_1430_diff__add,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ A )
        = B ) ) ).

% diff_add
thf(fact_1431_le__add__diff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ C @ ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A ) ) ) ).

% le_add_diff
thf(fact_1432_ordered__cancel__comm__monoid__diff__class_Ole__diff__conv2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_diff_conv2
thf(fact_1433_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C @ B ) @ A ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc
thf(fact_1434_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ C @ B ) @ A )
        = ( plus_plus_nat @ C @ ( minus_minus_nat @ B @ A ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc
thf(fact_1435_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ C )
        = ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc2
thf(fact_1436_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A )
        = ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ C ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc2
thf(fact_1437_ordered__cancel__comm__monoid__diff__class_Odiff__diff__right,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_diff_right
thf(fact_1438_ordered__cancel__comm__monoid__diff__class_Oadd__diff__inverse,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ A @ ( minus_minus_nat @ B @ A ) )
        = B ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_inverse
thf(fact_1439_ordered__cancel__comm__monoid__diff__class_Ole__imp__diff__is__add,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ( ( minus_minus_nat @ B @ A )
            = C )
          = ( B
            = ( plus_plus_nat @ C @ A ) ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_imp_diff_is_add
thf(fact_1440_diff__less__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ A )
       => ( ord_less_nat @ ( minus_minus_nat @ A @ C ) @ ( minus_minus_nat @ B @ C ) ) ) ) ).

% diff_less_mono
thf(fact_1441_less__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_nat @ M @ N ) ) ) ) ).

% less_diff_iff
thf(fact_1442_abs__triangle__ineq2,axiom,
    ! [A: code_integer,B: code_integer] : ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) ) ) ).

% abs_triangle_ineq2
thf(fact_1443_abs__triangle__ineq2,axiom,
    ! [A: rat,B: rat] : ( ord_less_eq_rat @ ( minus_minus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) @ ( abs_abs_rat @ ( minus_minus_rat @ A @ B ) ) ) ).

% abs_triangle_ineq2
thf(fact_1444_abs__triangle__ineq2,axiom,
    ! [A: int,B: int] : ( ord_less_eq_int @ ( minus_minus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) @ ( abs_abs_int @ ( minus_minus_int @ A @ B ) ) ) ).

% abs_triangle_ineq2
thf(fact_1445_abs__triangle__ineq3,axiom,
    ! [A: code_integer,B: code_integer] : ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) ) ) ).

% abs_triangle_ineq3
thf(fact_1446_abs__triangle__ineq3,axiom,
    ! [A: rat,B: rat] : ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) @ ( abs_abs_rat @ ( minus_minus_rat @ A @ B ) ) ) ).

% abs_triangle_ineq3
thf(fact_1447_abs__triangle__ineq3,axiom,
    ! [A: int,B: int] : ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) @ ( abs_abs_int @ ( minus_minus_int @ A @ B ) ) ) ).

% abs_triangle_ineq3
thf(fact_1448_abs__triangle__ineq2__sym,axiom,
    ! [A: code_integer,B: code_integer] : ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ B @ A ) ) ) ).

% abs_triangle_ineq2_sym
thf(fact_1449_abs__triangle__ineq2__sym,axiom,
    ! [A: rat,B: rat] : ( ord_less_eq_rat @ ( minus_minus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) @ ( abs_abs_rat @ ( minus_minus_rat @ B @ A ) ) ) ).

% abs_triangle_ineq2_sym
thf(fact_1450_abs__triangle__ineq2__sym,axiom,
    ! [A: int,B: int] : ( ord_less_eq_int @ ( minus_minus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) @ ( abs_abs_int @ ( minus_minus_int @ B @ A ) ) ) ).

% abs_triangle_ineq2_sym
thf(fact_1451_le__diff__conv,axiom,
    ! [J: nat,K: nat,I: nat] :
      ( ( ord_less_eq_nat @ ( minus_minus_nat @ J @ K ) @ I )
      = ( ord_less_eq_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ).

% le_diff_conv
thf(fact_1452_Nat_Ole__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_eq_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ) ).

% Nat.le_diff_conv2
thf(fact_1453_Nat_Odiff__add__assoc,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ I @ J ) @ K )
        = ( plus_plus_nat @ I @ ( minus_minus_nat @ J @ K ) ) ) ) ).

% Nat.diff_add_assoc
thf(fact_1454_Nat_Odiff__add__assoc2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ J @ I ) @ K )
        = ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I ) ) ) ).

% Nat.diff_add_assoc2
thf(fact_1455_Nat_Ole__imp__diff__is__add,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ( minus_minus_nat @ J @ I )
          = K )
        = ( J
          = ( plus_plus_nat @ K @ I ) ) ) ) ).

% Nat.le_imp_diff_is_add
thf(fact_1456_of__nat__mono,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ I ) @ ( semiri681578069525770553at_rat @ J ) ) ) ).

% of_nat_mono
thf(fact_1457_of__nat__mono,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( semiri1316708129612266289at_nat @ I ) @ ( semiri1316708129612266289at_nat @ J ) ) ) ).

% of_nat_mono
thf(fact_1458_of__nat__mono,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ I ) @ ( semiri1314217659103216013at_int @ J ) ) ) ).

% of_nat_mono
thf(fact_1459_power__not__zero,axiom,
    ! [A: code_integer,N: nat] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( power_8256067586552552935nteger @ A @ N )
       != zero_z3403309356797280102nteger ) ) ).

% power_not_zero
thf(fact_1460_power__not__zero,axiom,
    ! [A: rat,N: nat] :
      ( ( A != zero_zero_rat )
     => ( ( power_power_rat @ A @ N )
       != zero_zero_rat ) ) ).

% power_not_zero
thf(fact_1461_power__not__zero,axiom,
    ! [A: code_natural,N: nat] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( power_7079662738309270450atural @ A @ N )
       != zero_z2226904508553997617atural ) ) ).

% power_not_zero
thf(fact_1462_power__not__zero,axiom,
    ! [A: nat,N: nat] :
      ( ( A != zero_zero_nat )
     => ( ( power_power_nat @ A @ N )
       != zero_zero_nat ) ) ).

% power_not_zero
thf(fact_1463_power__not__zero,axiom,
    ! [A: int,N: nat] :
      ( ( A != zero_zero_int )
     => ( ( power_power_int @ A @ N )
       != zero_zero_int ) ) ).

% power_not_zero
thf(fact_1464_power__less__imp__less__base,axiom,
    ! [A: code_integer,N: nat,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ B @ N ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ A @ B ) ) ) ).

% power_less_imp_less_base
thf(fact_1465_power__less__imp__less__base,axiom,
    ! [A: code_natural,N: nat,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ B @ N ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ A @ B ) ) ) ).

% power_less_imp_less_base
thf(fact_1466_power__less__imp__less__base,axiom,
    ! [A: rat,N: nat,B: rat] :
      ( ( ord_less_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ B @ N ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ A @ B ) ) ) ).

% power_less_imp_less_base
thf(fact_1467_power__less__imp__less__base,axiom,
    ! [A: nat,N: nat,B: nat] :
      ( ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ A @ B ) ) ) ).

% power_less_imp_less_base
thf(fact_1468_power__less__imp__less__base,axiom,
    ! [A: int,N: nat,B: int] :
      ( ( ord_less_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_int @ A @ B ) ) ) ).

% power_less_imp_less_base
thf(fact_1469_power__le__one,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer )
       => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N ) @ one_one_Code_integer ) ) ) ).

% power_le_one
thf(fact_1470_power__le__one,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ A @ one_one_Code_natural )
       => ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ N ) @ one_one_Code_natural ) ) ) ).

% power_le_one
thf(fact_1471_power__le__one,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ A @ one_one_rat )
       => ( ord_less_eq_rat @ ( power_power_rat @ A @ N ) @ one_one_rat ) ) ) ).

% power_le_one
thf(fact_1472_power__le__one,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ A @ one_one_nat )
       => ( ord_less_eq_nat @ ( power_power_nat @ A @ N ) @ one_one_nat ) ) ) ).

% power_le_one
thf(fact_1473_power__le__one,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ A @ one_one_int )
       => ( ord_less_eq_int @ ( power_power_int @ A @ N ) @ one_one_int ) ) ) ).

% power_le_one
thf(fact_1474_pred__subset__eq2,axiom,
    ! [R5: set_Pr8056137968301705908nteger,S3: set_Pr8056137968301705908nteger] :
      ( ( ord_le3636971675376928563eger_o
        @ ^ [X4: code_integer > option6357759511663192854e_term,Y: produc8923325533196201883nteger] : ( member3068662437193594005nteger @ ( produc6137756002093451184nteger @ X4 @ Y ) @ R5 )
        @ ^ [X4: code_integer > option6357759511663192854e_term,Y: produc8923325533196201883nteger] : ( member3068662437193594005nteger @ ( produc6137756002093451184nteger @ X4 @ Y ) @ S3 ) )
      = ( ord_le3216752416896350996nteger @ R5 @ S3 ) ) ).

% pred_subset_eq2
thf(fact_1475_pred__subset__eq2,axiom,
    ! [R5: set_Pr4244404650639074861atural,S3: set_Pr4244404650639074861atural] :
      ( ( ord_le7397293433748542458ural_o
        @ ^ [X4: produc4972180933644002618e_term > option6357759511663192854e_term,Y: produc7822875418678951345atural] : ( member3245610415464309390atural @ ( produc3831813291587773865atural @ X4 @ Y ) @ R5 )
        @ ^ [X4: produc4972180933644002618e_term > option6357759511663192854e_term,Y: produc7822875418678951345atural] : ( member3245610415464309390atural @ ( produc3831813291587773865atural @ X4 @ Y ) @ S3 ) )
      = ( ord_le3616440322383431309atural @ R5 @ S3 ) ) ).

% pred_subset_eq2
thf(fact_1476_pred__subset__eq2,axiom,
    ! [R5: set_Pr1281608226676607948nteger,S3: set_Pr1281608226676607948nteger] :
      ( ( ord_le4340812435750786203eger_o
        @ ^ [X4: produc6241069584506657477e_term > option6357759511663192854e_term,Y: produc8923325533196201883nteger] : ( member4164122664394876845nteger @ ( produc8603105652947943368nteger @ X4 @ Y ) @ R5 )
        @ ^ [X4: produc6241069584506657477e_term > option6357759511663192854e_term,Y: produc8923325533196201883nteger] : ( member4164122664394876845nteger @ ( produc8603105652947943368nteger @ X4 @ Y ) @ S3 ) )
      = ( ord_le653643898420964396nteger @ R5 @ S3 ) ) ).

% pred_subset_eq2
thf(fact_1477_pred__subset__eq2,axiom,
    ! [R5: set_Pr9222295170931077689nt_int,S3: set_Pr9222295170931077689nt_int] :
      ( ( ord_le5643404153117327598_int_o
        @ ^ [X4: produc8551481072490612790e_term > option6357759511663192854e_term,Y: product_prod_int_int] : ( member7618704894036264090nt_int @ ( produc5700946648718959541nt_int @ X4 @ Y ) @ R5 )
        @ ^ [X4: produc8551481072490612790e_term > option6357759511663192854e_term,Y: product_prod_int_int] : ( member7618704894036264090nt_int @ ( produc5700946648718959541nt_int @ X4 @ Y ) @ S3 ) )
      = ( ord_le8725513860283290265nt_int @ R5 @ S3 ) ) ).

% pred_subset_eq2
thf(fact_1478_pred__subset__eq2,axiom,
    ! [R5: set_Pr1872883991513573699nt_int,S3: set_Pr1872883991513573699nt_int] :
      ( ( ord_le2124322318746777828_int_o
        @ ^ [X4: int > option6357759511663192854e_term,Y: product_prod_int_int] : ( member7034335876925520548nt_int @ ( produc4305682042979456191nt_int @ X4 @ Y ) @ R5 )
        @ ^ [X4: int > option6357759511663192854e_term,Y: product_prod_int_int] : ( member7034335876925520548nt_int @ ( produc4305682042979456191nt_int @ X4 @ Y ) @ S3 ) )
      = ( ord_le135402666524580259nt_int @ R5 @ S3 ) ) ).

% pred_subset_eq2
thf(fact_1479_zero__le__power__abs,axiom,
    ! [A: code_integer,N: nat] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ ( abs_abs_Code_integer @ A ) @ N ) ) ).

% zero_le_power_abs
thf(fact_1480_zero__le__power__abs,axiom,
    ! [A: rat,N: nat] : ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ ( abs_abs_rat @ A ) @ N ) ) ).

% zero_le_power_abs
thf(fact_1481_zero__le__power__abs,axiom,
    ! [A: int,N: nat] : ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ ( abs_abs_int @ A ) @ N ) ) ).

% zero_le_power_abs
thf(fact_1482_abs__diff__triangle__ineq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] : ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ ( plus_p5714425477246183910nteger @ C @ D ) ) ) @ ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ A @ C ) ) @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ B @ D ) ) ) ) ).

% abs_diff_triangle_ineq
thf(fact_1483_abs__diff__triangle__ineq,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] : ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ ( plus_plus_rat @ A @ B ) @ ( plus_plus_rat @ C @ D ) ) ) @ ( plus_plus_rat @ ( abs_abs_rat @ ( minus_minus_rat @ A @ C ) ) @ ( abs_abs_rat @ ( minus_minus_rat @ B @ D ) ) ) ) ).

% abs_diff_triangle_ineq
thf(fact_1484_abs__diff__triangle__ineq,axiom,
    ! [A: int,B: int,C: int,D: int] : ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ ( plus_plus_int @ C @ D ) ) ) @ ( plus_plus_int @ ( abs_abs_int @ ( minus_minus_int @ A @ C ) ) @ ( abs_abs_int @ ( minus_minus_int @ B @ D ) ) ) ) ).

% abs_diff_triangle_ineq
thf(fact_1485_abs__triangle__ineq4,axiom,
    ! [A: code_integer,B: code_integer] : ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) ) @ ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) ).

% abs_triangle_ineq4
thf(fact_1486_abs__triangle__ineq4,axiom,
    ! [A: rat,B: rat] : ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ A @ B ) ) @ ( plus_plus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ).

% abs_triangle_ineq4
thf(fact_1487_abs__triangle__ineq4,axiom,
    ! [A: int,B: int] : ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ A @ B ) ) @ ( plus_plus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) ).

% abs_triangle_ineq4
thf(fact_1488_abs__diff__le__iff,axiom,
    ! [X: code_integer,A: code_integer,R: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ X @ A ) ) @ R )
      = ( ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ A @ R ) @ X )
        & ( ord_le3102999989581377725nteger @ X @ ( plus_p5714425477246183910nteger @ A @ R ) ) ) ) ).

% abs_diff_le_iff
thf(fact_1489_abs__diff__le__iff,axiom,
    ! [X: rat,A: rat,R: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ X @ A ) ) @ R )
      = ( ( ord_less_eq_rat @ ( minus_minus_rat @ A @ R ) @ X )
        & ( ord_less_eq_rat @ X @ ( plus_plus_rat @ A @ R ) ) ) ) ).

% abs_diff_le_iff
thf(fact_1490_abs__diff__le__iff,axiom,
    ! [X: int,A: int,R: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ X @ A ) ) @ R )
      = ( ( ord_less_eq_int @ ( minus_minus_int @ A @ R ) @ X )
        & ( ord_less_eq_int @ X @ ( plus_plus_int @ A @ R ) ) ) ) ).

% abs_diff_le_iff
thf(fact_1491_less__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( ord_less_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_1492_power__eq__iff__eq__base,axiom,
    ! [N: nat,A: code_integer,B: code_integer] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
         => ( ( ( power_8256067586552552935nteger @ A @ N )
              = ( power_8256067586552552935nteger @ B @ N ) )
            = ( A = B ) ) ) ) ) ).

% power_eq_iff_eq_base
thf(fact_1493_power__eq__iff__eq__base,axiom,
    ! [N: nat,A: code_natural,B: code_natural] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
         => ( ( ( power_7079662738309270450atural @ A @ N )
              = ( power_7079662738309270450atural @ B @ N ) )
            = ( A = B ) ) ) ) ) ).

% power_eq_iff_eq_base
thf(fact_1494_power__eq__iff__eq__base,axiom,
    ! [N: nat,A: rat,B: rat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
         => ( ( ( power_power_rat @ A @ N )
              = ( power_power_rat @ B @ N ) )
            = ( A = B ) ) ) ) ) ).

% power_eq_iff_eq_base
thf(fact_1495_power__eq__iff__eq__base,axiom,
    ! [N: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
         => ( ( ( power_power_nat @ A @ N )
              = ( power_power_nat @ B @ N ) )
            = ( A = B ) ) ) ) ) ).

% power_eq_iff_eq_base
thf(fact_1496_power__eq__iff__eq__base,axiom,
    ! [N: nat,A: int,B: int] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ( ord_less_eq_int @ zero_zero_int @ B )
         => ( ( ( power_power_int @ A @ N )
              = ( power_power_int @ B @ N ) )
            = ( A = B ) ) ) ) ) ).

% power_eq_iff_eq_base
thf(fact_1497_power__eq__imp__eq__base,axiom,
    ! [A: code_integer,N: nat,B: code_integer] :
      ( ( ( power_8256067586552552935nteger @ A @ N )
        = ( power_8256067586552552935nteger @ B @ N ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
         => ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( A = B ) ) ) ) ) ).

% power_eq_imp_eq_base
thf(fact_1498_power__eq__imp__eq__base,axiom,
    ! [A: code_natural,N: nat,B: code_natural] :
      ( ( ( power_7079662738309270450atural @ A @ N )
        = ( power_7079662738309270450atural @ B @ N ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
         => ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( A = B ) ) ) ) ) ).

% power_eq_imp_eq_base
thf(fact_1499_power__eq__imp__eq__base,axiom,
    ! [A: rat,N: nat,B: rat] :
      ( ( ( power_power_rat @ A @ N )
        = ( power_power_rat @ B @ N ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
         => ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( A = B ) ) ) ) ) ).

% power_eq_imp_eq_base
thf(fact_1500_power__eq__imp__eq__base,axiom,
    ! [A: nat,N: nat,B: nat] :
      ( ( ( power_power_nat @ A @ N )
        = ( power_power_nat @ B @ N ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
         => ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( A = B ) ) ) ) ) ).

% power_eq_imp_eq_base
thf(fact_1501_power__eq__imp__eq__base,axiom,
    ! [A: int,N: nat,B: int] :
      ( ( ( power_power_int @ A @ N )
        = ( power_power_int @ B @ N ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ( ord_less_eq_int @ zero_zero_int @ B )
         => ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( A = B ) ) ) ) ) ).

% power_eq_imp_eq_base
thf(fact_1502_self__le__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_le3102999989581377725nteger @ A @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ).

% self_le_power
thf(fact_1503_self__le__power,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ one_one_Code_natural @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_le1926595141338095240atural @ A @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ).

% self_le_power
thf(fact_1504_self__le__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ one_one_rat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_rat @ A @ ( power_power_rat @ A @ N ) ) ) ) ).

% self_le_power
thf(fact_1505_self__le__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_nat @ A @ ( power_power_nat @ A @ N ) ) ) ) ).

% self_le_power
thf(fact_1506_self__le__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ one_one_int @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_int @ A @ ( power_power_int @ A @ N ) ) ) ) ).

% self_le_power
thf(fact_1507_eq__iff__diff__eq__0,axiom,
    ( ( ^ [Y5: int,Z2: int] : Y5 = Z2 )
    = ( ^ [A4: int,B4: int] :
          ( ( minus_minus_int @ A4 @ B4 )
          = zero_zero_int ) ) ) ).

% eq_iff_diff_eq_0
thf(fact_1508_eq__iff__diff__eq__0,axiom,
    ( ( ^ [Y5: code_integer,Z2: code_integer] : Y5 = Z2 )
    = ( ^ [A4: code_integer,B4: code_integer] :
          ( ( minus_8373710615458151222nteger @ A4 @ B4 )
          = zero_z3403309356797280102nteger ) ) ) ).

% eq_iff_diff_eq_0
thf(fact_1509_eq__iff__diff__eq__0,axiom,
    ( ( ^ [Y5: rat,Z2: rat] : Y5 = Z2 )
    = ( ^ [A4: rat,B4: rat] :
          ( ( minus_minus_rat @ A4 @ B4 )
          = zero_zero_rat ) ) ) ).

% eq_iff_diff_eq_0
thf(fact_1510_diff__strict__mono,axiom,
    ! [A: code_integer,B: code_integer,D: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ D @ C )
       => ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ ( minus_8373710615458151222nteger @ B @ D ) ) ) ) ).

% diff_strict_mono
thf(fact_1511_diff__strict__mono,axiom,
    ! [A: rat,B: rat,D: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ D @ C )
       => ( ord_less_rat @ ( minus_minus_rat @ A @ C ) @ ( minus_minus_rat @ B @ D ) ) ) ) ).

% diff_strict_mono
thf(fact_1512_diff__strict__mono,axiom,
    ! [A: int,B: int,D: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ D @ C )
       => ( ord_less_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ D ) ) ) ) ).

% diff_strict_mono
thf(fact_1513_diff__eq__diff__less,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ( minus_8373710615458151222nteger @ A @ B )
        = ( minus_8373710615458151222nteger @ C @ D ) )
     => ( ( ord_le6747313008572928689nteger @ A @ B )
        = ( ord_le6747313008572928689nteger @ C @ D ) ) ) ).

% diff_eq_diff_less
thf(fact_1514_diff__eq__diff__less,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ( minus_minus_rat @ A @ B )
        = ( minus_minus_rat @ C @ D ) )
     => ( ( ord_less_rat @ A @ B )
        = ( ord_less_rat @ C @ D ) ) ) ).

% diff_eq_diff_less
thf(fact_1515_diff__eq__diff__less,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( ord_less_int @ A @ B )
        = ( ord_less_int @ C @ D ) ) ) ).

% diff_eq_diff_less
thf(fact_1516_diff__strict__left__mono,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ C @ A ) @ ( minus_8373710615458151222nteger @ C @ B ) ) ) ).

% diff_strict_left_mono
thf(fact_1517_diff__strict__left__mono,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ord_less_rat @ ( minus_minus_rat @ C @ A ) @ ( minus_minus_rat @ C @ B ) ) ) ).

% diff_strict_left_mono
thf(fact_1518_diff__strict__left__mono,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_int @ B @ A )
     => ( ord_less_int @ ( minus_minus_int @ C @ A ) @ ( minus_minus_int @ C @ B ) ) ) ).

% diff_strict_left_mono
thf(fact_1519_diff__strict__right__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ ( minus_8373710615458151222nteger @ B @ C ) ) ) ).

% diff_strict_right_mono
thf(fact_1520_diff__strict__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( minus_minus_rat @ A @ C ) @ ( minus_minus_rat @ B @ C ) ) ) ).

% diff_strict_right_mono
thf(fact_1521_diff__strict__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ C ) ) ) ).

% diff_strict_right_mono
thf(fact_1522_diff__diff__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C )
      = ( minus_minus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1523_diff__diff__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1524_diff__diff__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
      = ( minus_8373710615458151222nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1525_diff__diff__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( minus_minus_rat @ ( minus_minus_rat @ A @ B ) @ C )
      = ( minus_minus_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1526_add__implies__diff,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ( plus_plus_nat @ C @ B )
        = A )
     => ( C
        = ( minus_minus_nat @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1527_add__implies__diff,axiom,
    ! [C: int,B: int,A: int] :
      ( ( ( plus_plus_int @ C @ B )
        = A )
     => ( C
        = ( minus_minus_int @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1528_add__implies__diff,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ C @ B )
        = A )
     => ( C
        = ( minus_8373710615458151222nteger @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1529_add__implies__diff,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ( plus_plus_rat @ C @ B )
        = A )
     => ( C
        = ( minus_minus_rat @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1530_diff__add__eq__diff__diff__swap,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( minus_minus_int @ ( minus_minus_int @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_1531_diff__add__eq__diff__diff__swap,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_1532_diff__add__eq__diff__diff__swap,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( minus_minus_rat @ A @ ( plus_plus_rat @ B @ C ) )
      = ( minus_minus_rat @ ( minus_minus_rat @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_1533_diff__add__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_1534_diff__add__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
      = ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_1535_diff__add__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ ( minus_minus_rat @ A @ B ) @ C )
      = ( minus_minus_rat @ ( plus_plus_rat @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_1536_diff__diff__eq2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_1537_diff__diff__eq2,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ ( minus_8373710615458151222nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_1538_diff__diff__eq2,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( minus_minus_rat @ A @ ( minus_minus_rat @ B @ C ) )
      = ( minus_minus_rat @ ( plus_plus_rat @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_1539_add__diff__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_1540_add__diff__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ ( minus_8373710615458151222nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_1541_add__diff__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ A @ ( minus_minus_rat @ B @ C ) )
      = ( minus_minus_rat @ ( plus_plus_rat @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_1542_eq__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( A
        = ( minus_minus_int @ C @ B ) )
      = ( ( plus_plus_int @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_1543_eq__diff__eq,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( A
        = ( minus_8373710615458151222nteger @ C @ B ) )
      = ( ( plus_p5714425477246183910nteger @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_1544_eq__diff__eq,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( A
        = ( minus_minus_rat @ C @ B ) )
      = ( ( plus_plus_rat @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_1545_diff__eq__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( minus_minus_int @ A @ B )
        = C )
      = ( A
        = ( plus_plus_int @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_1546_diff__eq__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ( minus_8373710615458151222nteger @ A @ B )
        = C )
      = ( A
        = ( plus_p5714425477246183910nteger @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_1547_diff__eq__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ( minus_minus_rat @ A @ B )
        = C )
      = ( A
        = ( plus_plus_rat @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_1548_group__cancel_Osub1,axiom,
    ! [A3: int,K: int,A: int,B: int] :
      ( ( A3
        = ( plus_plus_int @ K @ A ) )
     => ( ( minus_minus_int @ A3 @ B )
        = ( plus_plus_int @ K @ ( minus_minus_int @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_1549_group__cancel_Osub1,axiom,
    ! [A3: code_integer,K: code_integer,A: code_integer,B: code_integer] :
      ( ( A3
        = ( plus_p5714425477246183910nteger @ K @ A ) )
     => ( ( minus_8373710615458151222nteger @ A3 @ B )
        = ( plus_p5714425477246183910nteger @ K @ ( minus_8373710615458151222nteger @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_1550_group__cancel_Osub1,axiom,
    ! [A3: rat,K: rat,A: rat,B: rat] :
      ( ( A3
        = ( plus_plus_rat @ K @ A ) )
     => ( ( minus_minus_rat @ A3 @ B )
        = ( plus_plus_rat @ K @ ( minus_minus_rat @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_1551_minus__diff__commute,axiom,
    ! [B: int,A: int] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ B ) @ A )
      = ( minus_minus_int @ ( uminus_uminus_int @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_1552_minus__diff__commute,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ B ) @ A )
      = ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_1553_minus__diff__commute,axiom,
    ! [B: rat,A: rat] :
      ( ( minus_minus_rat @ ( uminus_uminus_rat @ B ) @ A )
      = ( minus_minus_rat @ ( uminus_uminus_rat @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_1554_zero__le,axiom,
    ! [X: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X ) ).

% zero_le
thf(fact_1555_le__numeral__extra_I3_J,axiom,
    ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger ).

% le_numeral_extra(3)
thf(fact_1556_le__numeral__extra_I3_J,axiom,
    ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ zero_z2226904508553997617atural ).

% le_numeral_extra(3)
thf(fact_1557_le__numeral__extra_I3_J,axiom,
    ord_less_eq_rat @ zero_zero_rat @ zero_zero_rat ).

% le_numeral_extra(3)
thf(fact_1558_le__numeral__extra_I3_J,axiom,
    ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat ).

% le_numeral_extra(3)
thf(fact_1559_le__numeral__extra_I3_J,axiom,
    ord_less_eq_int @ zero_zero_int @ zero_zero_int ).

% le_numeral_extra(3)
thf(fact_1560_diffs0__imp__equal,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N @ M )
          = zero_zero_nat )
       => ( M = N ) ) ) ).

% diffs0_imp_equal
thf(fact_1561_minus__nat_Odiff__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ zero_zero_nat )
      = M ) ).

% minus_nat.diff_0
thf(fact_1562_verit__comp__simplify1_I3_J,axiom,
    ! [B5: literal,A5: literal] :
      ( ( ~ ( ord_less_eq_literal @ B5 @ A5 ) )
      = ( ord_less_literal @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_1563_verit__comp__simplify1_I3_J,axiom,
    ! [B5: rat,A5: rat] :
      ( ( ~ ( ord_less_eq_rat @ B5 @ A5 ) )
      = ( ord_less_rat @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_1564_verit__comp__simplify1_I3_J,axiom,
    ! [B5: num,A5: num] :
      ( ( ~ ( ord_less_eq_num @ B5 @ A5 ) )
      = ( ord_less_num @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_1565_verit__comp__simplify1_I3_J,axiom,
    ! [B5: nat,A5: nat] :
      ( ( ~ ( ord_less_eq_nat @ B5 @ A5 ) )
      = ( ord_less_nat @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_1566_verit__comp__simplify1_I3_J,axiom,
    ! [B5: int,A5: int] :
      ( ( ~ ( ord_less_eq_int @ B5 @ A5 ) )
      = ( ord_less_int @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_1567_abs__minus__commute,axiom,
    ! [A: int,B: int] :
      ( ( abs_abs_int @ ( minus_minus_int @ A @ B ) )
      = ( abs_abs_int @ ( minus_minus_int @ B @ A ) ) ) ).

% abs_minus_commute
thf(fact_1568_abs__minus__commute,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ B @ A ) ) ) ).

% abs_minus_commute
thf(fact_1569_abs__minus__commute,axiom,
    ! [A: rat,B: rat] :
      ( ( abs_abs_rat @ ( minus_minus_rat @ A @ B ) )
      = ( abs_abs_rat @ ( minus_minus_rat @ B @ A ) ) ) ).

% abs_minus_commute
thf(fact_1570_less__imp__diff__less,axiom,
    ! [J: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ J @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J @ N ) @ K ) ) ).

% less_imp_diff_less
thf(fact_1571_diff__less__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ord_less_nat @ M @ L )
       => ( ord_less_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ) ).

% diff_less_mono2
thf(fact_1572_add__le__imp__le__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) )
     => ( ord_less_eq_rat @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_1573_add__le__imp__le__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_1574_add__le__imp__le__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
     => ( ord_less_eq_int @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_1575_add__le__imp__le__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) )
     => ( ord_less_eq_rat @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_1576_add__le__imp__le__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_1577_add__le__imp__le__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
     => ( ord_less_eq_int @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_1578_le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [A4: nat,B4: nat] :
        ? [C3: nat] :
          ( B4
          = ( plus_plus_nat @ A4 @ C3 ) ) ) ) ).

% le_iff_add
thf(fact_1579_add__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) ) ) ).

% add_right_mono
thf(fact_1580_add__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) ) ) ).

% add_right_mono
thf(fact_1581_add__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) ) ) ).

% add_right_mono
thf(fact_1582_less__eqE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ~ ! [C2: nat] :
            ( B
           != ( plus_plus_nat @ A @ C2 ) ) ) ).

% less_eqE
thf(fact_1583_add__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ord_less_eq_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) ) ) ).

% add_left_mono
thf(fact_1584_add__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) ) ) ).

% add_left_mono
thf(fact_1585_add__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) ) ) ).

% add_left_mono
thf(fact_1586_add__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ D )
       => ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ D ) ) ) ) ).

% add_mono
thf(fact_1587_add__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_mono
thf(fact_1588_add__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_mono
thf(fact_1589_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_eq_rat @ I @ J )
        & ( ord_less_eq_rat @ K @ L ) )
     => ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_1590_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_1591_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_eq_int @ I @ J )
        & ( ord_less_eq_int @ K @ L ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_1592_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( I = J )
        & ( ord_less_eq_rat @ K @ L ) )
     => ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_1593_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_1594_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( I = J )
        & ( ord_less_eq_int @ K @ L ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_1595_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_eq_rat @ I @ J )
        & ( K = L ) )
     => ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_1596_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( K = L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_1597_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_eq_int @ I @ J )
        & ( K = L ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_1598_le__numeral__extra_I4_J,axiom,
    ord_le3102999989581377725nteger @ one_one_Code_integer @ one_one_Code_integer ).

% le_numeral_extra(4)
thf(fact_1599_le__numeral__extra_I4_J,axiom,
    ord_le1926595141338095240atural @ one_one_Code_natural @ one_one_Code_natural ).

% le_numeral_extra(4)
thf(fact_1600_le__numeral__extra_I4_J,axiom,
    ord_less_eq_rat @ one_one_rat @ one_one_rat ).

% le_numeral_extra(4)
thf(fact_1601_le__numeral__extra_I4_J,axiom,
    ord_less_eq_nat @ one_one_nat @ one_one_nat ).

% le_numeral_extra(4)
thf(fact_1602_le__numeral__extra_I4_J,axiom,
    ord_less_eq_int @ one_one_int @ one_one_int ).

% le_numeral_extra(4)
thf(fact_1603_diff__add__inverse2,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ N )
      = M ) ).

% diff_add_inverse2
thf(fact_1604_diff__add__inverse,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N @ M ) @ N )
      = M ) ).

% diff_add_inverse
thf(fact_1605_diff__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_cancel2
thf(fact_1606_Nat_Odiff__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% Nat.diff_cancel
thf(fact_1607_subrelI,axiom,
    ! [R: set_Pr8056137968301705908nteger,S: set_Pr8056137968301705908nteger] :
      ( ! [X5: code_integer > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
          ( ( member3068662437193594005nteger @ ( produc6137756002093451184nteger @ X5 @ Y4 ) @ R )
         => ( member3068662437193594005nteger @ ( produc6137756002093451184nteger @ X5 @ Y4 ) @ S ) )
     => ( ord_le3216752416896350996nteger @ R @ S ) ) ).

% subrelI
thf(fact_1608_subrelI,axiom,
    ! [R: set_Pr4244404650639074861atural,S: set_Pr4244404650639074861atural] :
      ( ! [X5: produc4972180933644002618e_term > option6357759511663192854e_term,Y4: produc7822875418678951345atural] :
          ( ( member3245610415464309390atural @ ( produc3831813291587773865atural @ X5 @ Y4 ) @ R )
         => ( member3245610415464309390atural @ ( produc3831813291587773865atural @ X5 @ Y4 ) @ S ) )
     => ( ord_le3616440322383431309atural @ R @ S ) ) ).

% subrelI
thf(fact_1609_subrelI,axiom,
    ! [R: set_Pr1281608226676607948nteger,S: set_Pr1281608226676607948nteger] :
      ( ! [X5: produc6241069584506657477e_term > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
          ( ( member4164122664394876845nteger @ ( produc8603105652947943368nteger @ X5 @ Y4 ) @ R )
         => ( member4164122664394876845nteger @ ( produc8603105652947943368nteger @ X5 @ Y4 ) @ S ) )
     => ( ord_le653643898420964396nteger @ R @ S ) ) ).

% subrelI
thf(fact_1610_subrelI,axiom,
    ! [R: set_Pr9222295170931077689nt_int,S: set_Pr9222295170931077689nt_int] :
      ( ! [X5: produc8551481072490612790e_term > option6357759511663192854e_term,Y4: product_prod_int_int] :
          ( ( member7618704894036264090nt_int @ ( produc5700946648718959541nt_int @ X5 @ Y4 ) @ R )
         => ( member7618704894036264090nt_int @ ( produc5700946648718959541nt_int @ X5 @ Y4 ) @ S ) )
     => ( ord_le8725513860283290265nt_int @ R @ S ) ) ).

% subrelI
thf(fact_1611_subrelI,axiom,
    ! [R: set_Pr1872883991513573699nt_int,S: set_Pr1872883991513573699nt_int] :
      ( ! [X5: int > option6357759511663192854e_term,Y4: product_prod_int_int] :
          ( ( member7034335876925520548nt_int @ ( produc4305682042979456191nt_int @ X5 @ Y4 ) @ R )
         => ( member7034335876925520548nt_int @ ( produc4305682042979456191nt_int @ X5 @ Y4 ) @ S ) )
     => ( ord_le135402666524580259nt_int @ R @ S ) ) ).

% subrelI
thf(fact_1612_le__minus__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( uminus1351360451143612070nteger @ B ) )
      = ( ord_le3102999989581377725nteger @ B @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% le_minus_iff
thf(fact_1613_le__minus__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ ( uminus_uminus_rat @ B ) )
      = ( ord_less_eq_rat @ B @ ( uminus_uminus_rat @ A ) ) ) ).

% le_minus_iff
thf(fact_1614_le__minus__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( uminus_uminus_int @ B ) )
      = ( ord_less_eq_int @ B @ ( uminus_uminus_int @ A ) ) ) ).

% le_minus_iff
thf(fact_1615_minus__le__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
      = ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ B ) @ A ) ) ).

% minus_le_iff
thf(fact_1616_minus__le__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ B )
      = ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ A ) ) ).

% minus_le_iff
thf(fact_1617_minus__le__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ B )
      = ( ord_less_eq_int @ ( uminus_uminus_int @ B ) @ A ) ) ).

% minus_le_iff
thf(fact_1618_le__imp__neg__le,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% le_imp_neg_le
thf(fact_1619_le__imp__neg__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) ) ) ).

% le_imp_neg_le
thf(fact_1620_le__imp__neg__le,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% le_imp_neg_le
thf(fact_1621_int__zle__neg,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ N ) @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ M ) ) )
      = ( ( N = zero_zero_nat )
        & ( M = zero_zero_nat ) ) ) ).

% int_zle_neg
thf(fact_1622_le__0__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_0_eq
thf(fact_1623_bot__nat__0_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_uniqueI
thf(fact_1624_bot__nat__0_Oextremum__unique,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
      = ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_unique
thf(fact_1625_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_1626_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I: nat,J: nat] :
      ( ! [I3: nat,J2: nat] :
          ( ( ord_less_nat @ I3 @ J2 )
         => ( ord_less_nat @ ( F @ I3 ) @ ( F @ J2 ) ) )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ord_less_eq_nat @ ( F @ I ) @ ( F @ J ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_1627_le__neq__implies__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( M != N )
       => ( ord_less_nat @ M @ N ) ) ) ).

% le_neq_implies_less
thf(fact_1628_less__or__eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ord_less_nat @ M @ N )
        | ( M = N ) )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_or_eq_imp_le
thf(fact_1629_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M5: nat,N5: nat] :
          ( ( ord_less_nat @ M5 @ N5 )
          | ( M5 = N5 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_1630_less__imp__le__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_imp_le_nat
thf(fact_1631_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M5: nat,N5: nat] :
          ( ( ord_less_eq_nat @ M5 @ N5 )
          & ( M5 != N5 ) ) ) ) ).

% nat_less_le
thf(fact_1632_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M5: nat,N5: nat] :
        ? [K3: nat] :
          ( N5
          = ( plus_plus_nat @ M5 @ K3 ) ) ) ) ).

% nat_le_iff_add
thf(fact_1633_trans__le__add2,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_le_add2
thf(fact_1634_trans__le__add1,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_le_add1
thf(fact_1635_add__le__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_le_mono1
thf(fact_1636_add__le__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_le_mono
thf(fact_1637_le__Suc__ex,axiom,
    ! [K: nat,L: nat] :
      ( ( ord_less_eq_nat @ K @ L )
     => ? [N2: nat] :
          ( L
          = ( plus_plus_nat @ K @ N2 ) ) ) ).

% le_Suc_ex
thf(fact_1638_add__leD2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ K @ N ) ) ).

% add_leD2
thf(fact_1639_add__leD1,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% add_leD1
thf(fact_1640_le__add2,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M @ N ) ) ).

% le_add2
thf(fact_1641_le__add1,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M ) ) ).

% le_add1
thf(fact_1642_add__leE,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ~ ( ( ord_less_eq_nat @ M @ N )
         => ~ ( ord_less_eq_nat @ K @ N ) ) ) ).

% add_leE
thf(fact_1643_abs__le__D1,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ B )
     => ( ord_le3102999989581377725nteger @ A @ B ) ) ).

% abs_le_D1
thf(fact_1644_abs__le__D1,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ B )
     => ( ord_less_eq_rat @ A @ B ) ) ).

% abs_le_D1
thf(fact_1645_abs__le__D1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ A ) @ B )
     => ( ord_less_eq_int @ A @ B ) ) ).

% abs_le_D1
thf(fact_1646_abs__ge__self,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ A @ ( abs_abs_Code_integer @ A ) ) ).

% abs_ge_self
thf(fact_1647_abs__ge__self,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ A @ ( abs_abs_rat @ A ) ) ).

% abs_ge_self
thf(fact_1648_abs__ge__self,axiom,
    ! [A: int] : ( ord_less_eq_int @ A @ ( abs_abs_int @ A ) ) ).

% abs_ge_self
thf(fact_1649_zero__less__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% zero_less_power
thf(fact_1650_zero__less__power,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( power_7079662738309270450atural @ A @ N ) ) ) ).

% zero_less_power
thf(fact_1651_zero__less__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ord_less_rat @ zero_zero_rat @ ( power_power_rat @ A @ N ) ) ) ).

% zero_less_power
thf(fact_1652_zero__less__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ord_less_nat @ zero_zero_nat @ ( power_power_nat @ A @ N ) ) ) ).

% zero_less_power
thf(fact_1653_zero__less__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ord_less_int @ zero_zero_int @ ( power_power_int @ A @ N ) ) ) ).

% zero_less_power
thf(fact_1654_Ints__diff,axiom,
    ! [A: int,B: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( member_int @ B @ ring_1_Ints_int )
       => ( member_int @ ( minus_minus_int @ A @ B ) @ ring_1_Ints_int ) ) ) ).

% Ints_diff
thf(fact_1655_Ints__diff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( member_Code_integer @ B @ ring_11222124179247155820nteger )
       => ( member_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) @ ring_11222124179247155820nteger ) ) ) ).

% Ints_diff
thf(fact_1656_Ints__diff,axiom,
    ! [A: rat,B: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( member_rat @ B @ ring_1_Ints_rat )
       => ( member_rat @ ( minus_minus_rat @ A @ B ) @ ring_1_Ints_rat ) ) ) ).

% Ints_diff
thf(fact_1657_nat0__intermed__int__val,axiom,
    ! [N: nat,F: nat > int,K: int] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( F @ ( plus_plus_nat @ I3 @ one_one_nat ) ) @ ( F @ I3 ) ) ) @ one_one_int ) )
     => ( ( ord_less_eq_int @ ( F @ zero_zero_nat ) @ K )
       => ( ( ord_less_eq_int @ K @ ( F @ N ) )
         => ? [I3: nat] :
              ( ( ord_less_eq_nat @ I3 @ N )
              & ( ( F @ I3 )
                = K ) ) ) ) ) ).

% nat0_intermed_int_val
thf(fact_1658_Ints__power,axiom,
    ! [A: int,N: nat] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( member_int @ ( power_power_int @ A @ N ) @ ring_1_Ints_int ) ) ).

% Ints_power
thf(fact_1659_power__0,axiom,
    ! [A: code_integer] :
      ( ( power_8256067586552552935nteger @ A @ zero_zero_nat )
      = one_one_Code_integer ) ).

% power_0
thf(fact_1660_power__0,axiom,
    ! [A: rat] :
      ( ( power_power_rat @ A @ zero_zero_nat )
      = one_one_rat ) ).

% power_0
thf(fact_1661_power__0,axiom,
    ! [A: code_natural] :
      ( ( power_7079662738309270450atural @ A @ zero_zero_nat )
      = one_one_Code_natural ) ).

% power_0
thf(fact_1662_power__0,axiom,
    ! [A: nat] :
      ( ( power_power_nat @ A @ zero_zero_nat )
      = one_one_nat ) ).

% power_0
thf(fact_1663_power__0,axiom,
    ! [A: int] :
      ( ( power_power_int @ A @ zero_zero_nat )
      = one_one_int ) ).

% power_0
thf(fact_1664_nat__power__less__imp__less,axiom,
    ! [I: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ I )
     => ( ( ord_less_nat @ ( power_power_nat @ I @ M ) @ ( power_power_nat @ I @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% nat_power_less_imp_less
thf(fact_1665_power__strict__mono,axiom,
    ! [A: code_integer,B: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ B @ N ) ) ) ) ) ).

% power_strict_mono
thf(fact_1666_power__strict__mono,axiom,
    ! [A: code_natural,B: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ B @ N ) ) ) ) ) ).

% power_strict_mono
thf(fact_1667_power__strict__mono,axiom,
    ! [A: rat,B: rat,N: nat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ord_less_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ B @ N ) ) ) ) ) ).

% power_strict_mono
thf(fact_1668_power__strict__mono,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) ) ) ) ) ).

% power_strict_mono
thf(fact_1669_power__strict__mono,axiom,
    ! [A: int,B: int,N: nat] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ord_less_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) ) ) ) ) ).

% power_strict_mono
thf(fact_1670_split__of__bool__asm,axiom,
    ! [P: code_integer > $o,P4: $o] :
      ( ( P @ ( zero_n356916108424825756nteger @ P4 ) )
      = ( ~ ( ( P4
              & ~ ( P @ one_one_Code_integer ) )
            | ( ~ P4
              & ~ ( P @ zero_z3403309356797280102nteger ) ) ) ) ) ).

% split_of_bool_asm
thf(fact_1671_split__of__bool__asm,axiom,
    ! [P: rat > $o,P4: $o] :
      ( ( P @ ( zero_n2052037380579107095ol_rat @ P4 ) )
      = ( ~ ( ( P4
              & ~ ( P @ one_one_rat ) )
            | ( ~ P4
              & ~ ( P @ zero_zero_rat ) ) ) ) ) ).

% split_of_bool_asm
thf(fact_1672_split__of__bool__asm,axiom,
    ! [P: code_natural > $o,P4: $o] :
      ( ( P @ ( zero_n8403883297036319079atural @ P4 ) )
      = ( ~ ( ( P4
              & ~ ( P @ one_one_Code_natural ) )
            | ( ~ P4
              & ~ ( P @ zero_z2226904508553997617atural ) ) ) ) ) ).

% split_of_bool_asm
thf(fact_1673_split__of__bool__asm,axiom,
    ! [P: int > $o,P4: $o] :
      ( ( P @ ( zero_n2684676970156552555ol_int @ P4 ) )
      = ( ~ ( ( P4
              & ~ ( P @ one_one_int ) )
            | ( ~ P4
              & ~ ( P @ zero_zero_int ) ) ) ) ) ).

% split_of_bool_asm
thf(fact_1674_split__of__bool__asm,axiom,
    ! [P: nat > $o,P4: $o] :
      ( ( P @ ( zero_n2687167440665602831ol_nat @ P4 ) )
      = ( ~ ( ( P4
              & ~ ( P @ one_one_nat ) )
            | ( ~ P4
              & ~ ( P @ zero_zero_nat ) ) ) ) ) ).

% split_of_bool_asm
thf(fact_1675_split__of__bool,axiom,
    ! [P: code_integer > $o,P4: $o] :
      ( ( P @ ( zero_n356916108424825756nteger @ P4 ) )
      = ( ( P4
         => ( P @ one_one_Code_integer ) )
        & ( ~ P4
         => ( P @ zero_z3403309356797280102nteger ) ) ) ) ).

% split_of_bool
thf(fact_1676_split__of__bool,axiom,
    ! [P: rat > $o,P4: $o] :
      ( ( P @ ( zero_n2052037380579107095ol_rat @ P4 ) )
      = ( ( P4
         => ( P @ one_one_rat ) )
        & ( ~ P4
         => ( P @ zero_zero_rat ) ) ) ) ).

% split_of_bool
thf(fact_1677_split__of__bool,axiom,
    ! [P: code_natural > $o,P4: $o] :
      ( ( P @ ( zero_n8403883297036319079atural @ P4 ) )
      = ( ( P4
         => ( P @ one_one_Code_natural ) )
        & ( ~ P4
         => ( P @ zero_z2226904508553997617atural ) ) ) ) ).

% split_of_bool
thf(fact_1678_split__of__bool,axiom,
    ! [P: int > $o,P4: $o] :
      ( ( P @ ( zero_n2684676970156552555ol_int @ P4 ) )
      = ( ( P4
         => ( P @ one_one_int ) )
        & ( ~ P4
         => ( P @ zero_zero_int ) ) ) ) ).

% split_of_bool
thf(fact_1679_split__of__bool,axiom,
    ! [P: nat > $o,P4: $o] :
      ( ( P @ ( zero_n2687167440665602831ol_nat @ P4 ) )
      = ( ( P4
         => ( P @ one_one_nat ) )
        & ( ~ P4
         => ( P @ zero_zero_nat ) ) ) ) ).

% split_of_bool
thf(fact_1680_of__bool__def,axiom,
    ( zero_n356916108424825756nteger
    = ( ^ [P5: $o] : ( if_Code_integer @ P5 @ one_one_Code_integer @ zero_z3403309356797280102nteger ) ) ) ).

% of_bool_def
thf(fact_1681_of__bool__def,axiom,
    ( zero_n2052037380579107095ol_rat
    = ( ^ [P5: $o] : ( if_rat @ P5 @ one_one_rat @ zero_zero_rat ) ) ) ).

% of_bool_def
thf(fact_1682_of__bool__def,axiom,
    ( zero_n8403883297036319079atural
    = ( ^ [P5: $o] : ( if_Code_natural @ P5 @ one_one_Code_natural @ zero_z2226904508553997617atural ) ) ) ).

% of_bool_def
thf(fact_1683_of__bool__def,axiom,
    ( zero_n2684676970156552555ol_int
    = ( ^ [P5: $o] : ( if_int @ P5 @ one_one_int @ zero_zero_int ) ) ) ).

% of_bool_def
thf(fact_1684_of__bool__def,axiom,
    ( zero_n2687167440665602831ol_nat
    = ( ^ [P5: $o] : ( if_nat @ P5 @ one_one_nat @ zero_zero_nat ) ) ) ).

% of_bool_def
thf(fact_1685_less__iff__diff__less__0,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [A4: code_integer,B4: code_integer] : ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ A4 @ B4 ) @ zero_z3403309356797280102nteger ) ) ) ).

% less_iff_diff_less_0
thf(fact_1686_less__iff__diff__less__0,axiom,
    ( ord_less_rat
    = ( ^ [A4: rat,B4: rat] : ( ord_less_rat @ ( minus_minus_rat @ A4 @ B4 ) @ zero_zero_rat ) ) ) ).

% less_iff_diff_less_0
thf(fact_1687_less__iff__diff__less__0,axiom,
    ( ord_less_int
    = ( ^ [A4: int,B4: int] : ( ord_less_int @ ( minus_minus_int @ A4 @ B4 ) @ zero_zero_int ) ) ) ).

% less_iff_diff_less_0
thf(fact_1688_power__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ N )
          = one_one_Code_integer ) )
      & ( ( N != zero_zero_nat )
       => ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ N )
          = zero_z3403309356797280102nteger ) ) ) ).

% power_0_left
thf(fact_1689_power__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( power_power_rat @ zero_zero_rat @ N )
          = one_one_rat ) )
      & ( ( N != zero_zero_nat )
       => ( ( power_power_rat @ zero_zero_rat @ N )
          = zero_zero_rat ) ) ) ).

% power_0_left
thf(fact_1690_power__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ N )
          = one_one_Code_natural ) )
      & ( ( N != zero_zero_nat )
       => ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ N )
          = zero_z2226904508553997617atural ) ) ) ).

% power_0_left
thf(fact_1691_power__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( power_power_nat @ zero_zero_nat @ N )
          = one_one_nat ) )
      & ( ( N != zero_zero_nat )
       => ( ( power_power_nat @ zero_zero_nat @ N )
          = zero_zero_nat ) ) ) ).

% power_0_left
thf(fact_1692_power__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( power_power_int @ zero_zero_int @ N )
          = one_one_int ) )
      & ( ( N != zero_zero_nat )
       => ( ( power_power_int @ zero_zero_int @ N )
          = zero_zero_int ) ) ) ).

% power_0_left
thf(fact_1693_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ~ ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( plus_p5714425477246183910nteger @ B @ ( minus_8373710615458151222nteger @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_1694_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: rat,B: rat] :
      ( ~ ( ord_less_rat @ A @ B )
     => ( ( plus_plus_rat @ B @ ( minus_minus_rat @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_1695_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: nat,B: nat] :
      ( ~ ( ord_less_nat @ A @ B )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_1696_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: int,B: int] :
      ( ~ ( ord_less_int @ A @ B )
     => ( ( plus_plus_int @ B @ ( minus_minus_int @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_1697_diff__less__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
      = ( ord_le6747313008572928689nteger @ A @ ( plus_p5714425477246183910nteger @ C @ B ) ) ) ).

% diff_less_eq
thf(fact_1698_diff__less__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ ( minus_minus_rat @ A @ B ) @ C )
      = ( ord_less_rat @ A @ ( plus_plus_rat @ C @ B ) ) ) ).

% diff_less_eq
thf(fact_1699_diff__less__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( ord_less_int @ A @ ( plus_plus_int @ C @ B ) ) ) ).

% diff_less_eq
thf(fact_1700_less__diff__eq,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( minus_8373710615458151222nteger @ C @ B ) )
      = ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% less_diff_eq
thf(fact_1701_less__diff__eq,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ A @ ( minus_minus_rat @ C @ B ) )
      = ( ord_less_rat @ ( plus_plus_rat @ A @ B ) @ C ) ) ).

% less_diff_eq
thf(fact_1702_less__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ A @ ( minus_minus_int @ C @ B ) )
      = ( ord_less_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% less_diff_eq
thf(fact_1703_power__strict__increasing,axiom,
    ! [N: nat,N6: nat,A: code_integer] :
      ( ( ord_less_nat @ N @ N6 )
     => ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
       => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ A @ N6 ) ) ) ) ).

% power_strict_increasing
thf(fact_1704_power__strict__increasing,axiom,
    ! [N: nat,N6: nat,A: code_natural] :
      ( ( ord_less_nat @ N @ N6 )
     => ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
       => ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ A @ N6 ) ) ) ) ).

% power_strict_increasing
thf(fact_1705_power__strict__increasing,axiom,
    ! [N: nat,N6: nat,A: rat] :
      ( ( ord_less_nat @ N @ N6 )
     => ( ( ord_less_rat @ one_one_rat @ A )
       => ( ord_less_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ A @ N6 ) ) ) ) ).

% power_strict_increasing
thf(fact_1706_power__strict__increasing,axiom,
    ! [N: nat,N6: nat,A: nat] :
      ( ( ord_less_nat @ N @ N6 )
     => ( ( ord_less_nat @ one_one_nat @ A )
       => ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ A @ N6 ) ) ) ) ).

% power_strict_increasing
thf(fact_1707_power__strict__increasing,axiom,
    ! [N: nat,N6: nat,A: int] :
      ( ( ord_less_nat @ N @ N6 )
     => ( ( ord_less_int @ one_one_int @ A )
       => ( ord_less_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ A @ N6 ) ) ) ) ).

% power_strict_increasing
thf(fact_1708_power__less__imp__less__exp,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_1709_power__less__imp__less__exp,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ M ) @ ( power_7079662738309270450atural @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_1710_power__less__imp__less__exp,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ord_less_rat @ ( power_power_rat @ A @ M ) @ ( power_power_rat @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_1711_power__less__imp__less__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ord_less_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_1712_power__less__imp__less__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ord_less_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_1713_zero__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ N )
        = zero_z3403309356797280102nteger ) ) ).

% zero_power
thf(fact_1714_zero__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( power_power_rat @ zero_zero_rat @ N )
        = zero_zero_rat ) ) ).

% zero_power
thf(fact_1715_zero__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ N )
        = zero_z2226904508553997617atural ) ) ).

% zero_power
thf(fact_1716_zero__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( power_power_nat @ zero_zero_nat @ N )
        = zero_zero_nat ) ) ).

% zero_power
thf(fact_1717_zero__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( power_power_int @ zero_zero_int @ N )
        = zero_zero_int ) ) ).

% zero_power
thf(fact_1718_group__cancel_Osub2,axiom,
    ! [B3: int,K: int,B: int,A: int] :
      ( ( B3
        = ( plus_plus_int @ K @ B ) )
     => ( ( minus_minus_int @ A @ B3 )
        = ( plus_plus_int @ ( uminus_uminus_int @ K ) @ ( minus_minus_int @ A @ B ) ) ) ) ).

% group_cancel.sub2
thf(fact_1719_group__cancel_Osub2,axiom,
    ! [B3: code_integer,K: code_integer,B: code_integer,A: code_integer] :
      ( ( B3
        = ( plus_p5714425477246183910nteger @ K @ B ) )
     => ( ( minus_8373710615458151222nteger @ A @ B3 )
        = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ K ) @ ( minus_8373710615458151222nteger @ A @ B ) ) ) ) ).

% group_cancel.sub2
thf(fact_1720_group__cancel_Osub2,axiom,
    ! [B3: rat,K: rat,B: rat,A: rat] :
      ( ( B3
        = ( plus_plus_rat @ K @ B ) )
     => ( ( minus_minus_rat @ A @ B3 )
        = ( plus_plus_rat @ ( uminus_uminus_rat @ K ) @ ( minus_minus_rat @ A @ B ) ) ) ) ).

% group_cancel.sub2
thf(fact_1721_diff__conv__add__uminus,axiom,
    ( minus_minus_int
    = ( ^ [A4: int,B4: int] : ( plus_plus_int @ A4 @ ( uminus_uminus_int @ B4 ) ) ) ) ).

% diff_conv_add_uminus
thf(fact_1722_diff__conv__add__uminus,axiom,
    ( minus_8373710615458151222nteger
    = ( ^ [A4: code_integer,B4: code_integer] : ( plus_p5714425477246183910nteger @ A4 @ ( uminus1351360451143612070nteger @ B4 ) ) ) ) ).

% diff_conv_add_uminus
thf(fact_1723_diff__conv__add__uminus,axiom,
    ( minus_minus_rat
    = ( ^ [A4: rat,B4: rat] : ( plus_plus_rat @ A4 @ ( uminus_uminus_rat @ B4 ) ) ) ) ).

% diff_conv_add_uminus
thf(fact_1724_ab__group__add__class_Oab__diff__conv__add__uminus,axiom,
    ( minus_minus_int
    = ( ^ [A4: int,B4: int] : ( plus_plus_int @ A4 @ ( uminus_uminus_int @ B4 ) ) ) ) ).

% ab_group_add_class.ab_diff_conv_add_uminus
thf(fact_1725_ab__group__add__class_Oab__diff__conv__add__uminus,axiom,
    ( minus_8373710615458151222nteger
    = ( ^ [A4: code_integer,B4: code_integer] : ( plus_p5714425477246183910nteger @ A4 @ ( uminus1351360451143612070nteger @ B4 ) ) ) ) ).

% ab_group_add_class.ab_diff_conv_add_uminus
thf(fact_1726_ab__group__add__class_Oab__diff__conv__add__uminus,axiom,
    ( minus_minus_rat
    = ( ^ [A4: rat,B4: rat] : ( plus_plus_rat @ A4 @ ( uminus_uminus_rat @ B4 ) ) ) ) ).

% ab_group_add_class.ab_diff_conv_add_uminus
thf(fact_1727_add__nonpos__eq__0__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le3102999989581377725nteger @ X @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ Y3 @ zero_z3403309356797280102nteger )
       => ( ( ( plus_p5714425477246183910nteger @ X @ Y3 )
            = zero_z3403309356797280102nteger )
          = ( ( X = zero_z3403309356797280102nteger )
            & ( Y3 = zero_z3403309356797280102nteger ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_1728_add__nonpos__eq__0__iff,axiom,
    ! [X: code_natural,Y3: code_natural] :
      ( ( ord_le1926595141338095240atural @ X @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ Y3 @ zero_z2226904508553997617atural )
       => ( ( ( plus_p4538020629002901425atural @ X @ Y3 )
            = zero_z2226904508553997617atural )
          = ( ( X = zero_z2226904508553997617atural )
            & ( Y3 = zero_z2226904508553997617atural ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_1729_add__nonpos__eq__0__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ X @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ Y3 @ zero_zero_rat )
       => ( ( ( plus_plus_rat @ X @ Y3 )
            = zero_zero_rat )
          = ( ( X = zero_zero_rat )
            & ( Y3 = zero_zero_rat ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_1730_add__nonpos__eq__0__iff,axiom,
    ! [X: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ Y3 @ zero_zero_nat )
       => ( ( ( plus_plus_nat @ X @ Y3 )
            = zero_zero_nat )
          = ( ( X = zero_zero_nat )
            & ( Y3 = zero_zero_nat ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_1731_add__nonpos__eq__0__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ X @ zero_zero_int )
     => ( ( ord_less_eq_int @ Y3 @ zero_zero_int )
       => ( ( ( plus_plus_int @ X @ Y3 )
            = zero_zero_int )
          = ( ( X = zero_zero_int )
            & ( Y3 = zero_zero_int ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_1732_add__nonneg__eq__0__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y3 )
       => ( ( ( plus_p5714425477246183910nteger @ X @ Y3 )
            = zero_z3403309356797280102nteger )
          = ( ( X = zero_z3403309356797280102nteger )
            & ( Y3 = zero_z3403309356797280102nteger ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_1733_add__nonneg__eq__0__iff,axiom,
    ! [X: code_natural,Y3: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ X )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ Y3 )
       => ( ( ( plus_p4538020629002901425atural @ X @ Y3 )
            = zero_z2226904508553997617atural )
          = ( ( X = zero_z2226904508553997617atural )
            & ( Y3 = zero_z2226904508553997617atural ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_1734_add__nonneg__eq__0__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
       => ( ( ( plus_plus_rat @ X @ Y3 )
            = zero_zero_rat )
          = ( ( X = zero_zero_rat )
            & ( Y3 = zero_zero_rat ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_1735_add__nonneg__eq__0__iff,axiom,
    ! [X: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ X )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y3 )
       => ( ( ( plus_plus_nat @ X @ Y3 )
            = zero_zero_nat )
          = ( ( X = zero_zero_nat )
            & ( Y3 = zero_zero_nat ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_1736_add__nonneg__eq__0__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
       => ( ( ( plus_plus_int @ X @ Y3 )
            = zero_zero_int )
          = ( ( X = zero_zero_int )
            & ( Y3 = zero_zero_int ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_1737_add__nonpos__nonpos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% add_nonpos_nonpos
thf(fact_1738_add__nonpos__nonpos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le1926595141338095240atural @ ( plus_p4538020629002901425atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% add_nonpos_nonpos
thf(fact_1739_add__nonpos__nonpos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ B @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( plus_plus_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% add_nonpos_nonpos
thf(fact_1740_add__nonpos__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_nonpos
thf(fact_1741_add__nonpos__nonpos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_nonpos_nonpos
thf(fact_1742_add__nonneg__nonneg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_1743_add__nonneg__nonneg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_1744_add__nonneg__nonneg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_1745_add__nonneg__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_1746_add__nonneg__nonneg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_1747_add__increasing2,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
     => ( ( ord_le3102999989581377725nteger @ B @ A )
       => ( ord_le3102999989581377725nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_1748_add__increasing2,axiom,
    ! [C: code_natural,B: code_natural,A: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
     => ( ( ord_le1926595141338095240atural @ B @ A )
       => ( ord_le1926595141338095240atural @ B @ ( plus_p4538020629002901425atural @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_1749_add__increasing2,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ B @ A )
       => ( ord_less_eq_rat @ B @ ( plus_plus_rat @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_1750_add__increasing2,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ C )
     => ( ( ord_less_eq_nat @ B @ A )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_1751_add__increasing2,axiom,
    ! [C: int,B: int,A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( ord_less_eq_int @ B @ A )
       => ( ord_less_eq_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_1752_add__decreasing2,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ A @ B )
       => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_1753_add__decreasing2,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ C @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ A @ B )
       => ( ord_le1926595141338095240atural @ ( plus_p4538020629002901425atural @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_1754_add__decreasing2,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_eq_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ A @ B )
       => ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_1755_add__decreasing2,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ C @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_1756_add__decreasing2,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ C @ zero_zero_int )
     => ( ( ord_less_eq_int @ A @ B )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_1757_add__increasing,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ B @ C )
       => ( ord_le3102999989581377725nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_1758_add__increasing,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ B @ C )
       => ( ord_le1926595141338095240atural @ B @ ( plus_p4538020629002901425atural @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_1759_add__increasing,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ord_less_eq_rat @ B @ ( plus_plus_rat @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_1760_add__increasing,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_1761_add__increasing,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ord_less_eq_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_1762_add__decreasing,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ C @ B )
       => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_1763_add__decreasing,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ C @ B )
       => ( ord_le1926595141338095240atural @ ( plus_p4538020629002901425atural @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_1764_add__decreasing,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ C @ B )
       => ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_1765_add__decreasing,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_1766_add__decreasing,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ C @ B )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_1767_not__one__le__zero,axiom,
    ~ ( ord_le3102999989581377725nteger @ one_one_Code_integer @ zero_z3403309356797280102nteger ) ).

% not_one_le_zero
thf(fact_1768_not__one__le__zero,axiom,
    ~ ( ord_le1926595141338095240atural @ one_one_Code_natural @ zero_z2226904508553997617atural ) ).

% not_one_le_zero
thf(fact_1769_not__one__le__zero,axiom,
    ~ ( ord_less_eq_rat @ one_one_rat @ zero_zero_rat ) ).

% not_one_le_zero
thf(fact_1770_not__one__le__zero,axiom,
    ~ ( ord_less_eq_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_le_zero
thf(fact_1771_not__one__le__zero,axiom,
    ~ ( ord_less_eq_int @ one_one_int @ zero_zero_int ) ).

% not_one_le_zero
thf(fact_1772_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ one_one_Code_integer ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_1773_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ one_one_Code_natural ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_1774_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_rat @ zero_zero_rat @ one_one_rat ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_1775_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_1776_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_int @ zero_zero_int @ one_one_int ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_1777_zero__less__one__class_Ozero__le__one,axiom,
    ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ one_one_Code_integer ).

% zero_less_one_class.zero_le_one
thf(fact_1778_zero__less__one__class_Ozero__le__one,axiom,
    ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ one_one_Code_natural ).

% zero_less_one_class.zero_le_one
thf(fact_1779_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_rat @ zero_zero_rat @ one_one_rat ).

% zero_less_one_class.zero_le_one
thf(fact_1780_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one_class.zero_le_one
thf(fact_1781_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_int @ zero_zero_int @ one_one_int ).

% zero_less_one_class.zero_le_one
thf(fact_1782_diff__less,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ M ) ) ) ).

% diff_less
thf(fact_1783_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_eq_rat @ I @ J )
        & ( ord_less_rat @ K @ L ) )
     => ( ord_less_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_1784_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_1785_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_eq_int @ I @ J )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_1786_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_rat @ I @ J )
        & ( ord_less_eq_rat @ K @ L ) )
     => ( ord_less_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_1787_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_1788_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_int @ I @ J )
        & ( ord_less_eq_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_1789_add__le__less__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_rat @ C @ D )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ D ) ) ) ) ).

% add_le_less_mono
thf(fact_1790_add__le__less__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_le_less_mono
thf(fact_1791_add__le__less__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_le_less_mono
thf(fact_1792_add__less__le__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ D )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ D ) ) ) ) ).

% add_less_le_mono
thf(fact_1793_add__less__le__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_less_le_mono
thf(fact_1794_add__less__le__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_less_le_mono
thf(fact_1795_diff__add__0,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_1796_less__diff__conv,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ ( minus_minus_nat @ J @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ).

% less_diff_conv
thf(fact_1797_add__diff__inverse__nat,axiom,
    ! [M: nat,N: nat] :
      ( ~ ( ord_less_nat @ M @ N )
     => ( ( plus_plus_nat @ N @ ( minus_minus_nat @ M @ N ) )
        = M ) ) ).

% add_diff_inverse_nat
thf(fact_1798_le__minus__one__simps_I2_J,axiom,
    ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ one_one_Code_integer ).

% le_minus_one_simps(2)
thf(fact_1799_le__minus__one__simps_I2_J,axiom,
    ord_less_eq_rat @ ( uminus_uminus_rat @ one_one_rat ) @ one_one_rat ).

% le_minus_one_simps(2)
thf(fact_1800_le__minus__one__simps_I2_J,axiom,
    ord_less_eq_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int ).

% le_minus_one_simps(2)
thf(fact_1801_le__minus__one__simps_I4_J,axiom,
    ~ ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% le_minus_one_simps(4)
thf(fact_1802_le__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_eq_rat @ one_one_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% le_minus_one_simps(4)
thf(fact_1803_le__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_eq_int @ one_one_int @ ( uminus_uminus_int @ one_one_int ) ) ).

% le_minus_one_simps(4)
thf(fact_1804_of__nat__0__le__iff,axiom,
    ! [N: nat] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( semiri4939895301339042750nteger @ N ) ) ).

% of_nat_0_le_iff
thf(fact_1805_of__nat__0__le__iff,axiom,
    ! [N: nat] : ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( semiri3763490453095760265atural @ N ) ) ).

% of_nat_0_le_iff
thf(fact_1806_of__nat__0__le__iff,axiom,
    ! [N: nat] : ( ord_less_eq_rat @ zero_zero_rat @ ( semiri681578069525770553at_rat @ N ) ) ).

% of_nat_0_le_iff
thf(fact_1807_of__nat__0__le__iff,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ ( semiri1316708129612266289at_nat @ N ) ) ).

% of_nat_0_le_iff
thf(fact_1808_of__nat__0__le__iff,axiom,
    ! [N: nat] : ( ord_less_eq_int @ zero_zero_int @ ( semiri1314217659103216013at_int @ N ) ) ).

% of_nat_0_le_iff
thf(fact_1809_abs__ge__zero,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( abs_abs_Code_integer @ A ) ) ).

% abs_ge_zero
thf(fact_1810_abs__ge__zero,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ zero_zero_rat @ ( abs_abs_rat @ A ) ) ).

% abs_ge_zero
thf(fact_1811_abs__ge__zero,axiom,
    ! [A: int] : ( ord_less_eq_int @ zero_zero_int @ ( abs_abs_int @ A ) ) ).

% abs_ge_zero
thf(fact_1812_abs__triangle__ineq,axiom,
    ! [A: code_integer,B: code_integer] : ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( plus_p5714425477246183910nteger @ A @ B ) ) @ ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) ).

% abs_triangle_ineq
thf(fact_1813_abs__triangle__ineq,axiom,
    ! [A: rat,B: rat] : ( ord_less_eq_rat @ ( abs_abs_rat @ ( plus_plus_rat @ A @ B ) ) @ ( plus_plus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ).

% abs_triangle_ineq
thf(fact_1814_abs__triangle__ineq,axiom,
    ! [A: int,B: int] : ( ord_less_eq_int @ ( abs_abs_int @ ( plus_plus_int @ A @ B ) ) @ ( plus_plus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) ).

% abs_triangle_ineq
thf(fact_1815_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K2 )
               => ~ ( P @ I4 ) )
            & ( P @ K2 ) ) ) ) ).

% ex_least_nat_le
thf(fact_1816_abs__leI,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
       => ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ B ) ) ) ).

% abs_leI
thf(fact_1817_abs__leI,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ B )
       => ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ B ) ) ) ).

% abs_leI
thf(fact_1818_abs__leI,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ B )
       => ( ord_less_eq_int @ ( abs_abs_int @ A ) @ B ) ) ) ).

% abs_leI
thf(fact_1819_abs__le__D2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ B )
     => ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ B ) ) ).

% abs_le_D2
thf(fact_1820_abs__le__D2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ B )
     => ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ B ) ) ).

% abs_le_D2
thf(fact_1821_abs__le__D2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ A ) @ B )
     => ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ B ) ) ).

% abs_le_D2
thf(fact_1822_abs__le__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ B )
      = ( ( ord_le3102999989581377725nteger @ A @ B )
        & ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ B ) ) ) ).

% abs_le_iff
thf(fact_1823_abs__le__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ B )
      = ( ( ord_less_eq_rat @ A @ B )
        & ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ B ) ) ) ).

% abs_le_iff
thf(fact_1824_abs__le__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ A ) @ B )
      = ( ( ord_less_eq_int @ A @ B )
        & ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ B ) ) ) ).

% abs_le_iff
thf(fact_1825_abs__ge__minus__self,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ ( abs_abs_Code_integer @ A ) ) ).

% abs_ge_minus_self
thf(fact_1826_abs__ge__minus__self,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ ( abs_abs_rat @ A ) ) ).

% abs_ge_minus_self
thf(fact_1827_abs__ge__minus__self,axiom,
    ! [A: int] : ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ ( abs_abs_int @ A ) ) ).

% abs_ge_minus_self
thf(fact_1828_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M: nat,K: nat] :
      ( ! [M4: nat,N2: nat] :
          ( ( ord_less_nat @ M4 @ N2 )
         => ( ord_less_nat @ ( F @ M4 ) @ ( F @ N2 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M ) @ K ) @ ( F @ ( plus_plus_nat @ M @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_1829_power__strict__decreasing,axiom,
    ! [N: nat,N6: nat,A: code_integer] :
      ( ( ord_less_nat @ N @ N6 )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_le6747313008572928689nteger @ A @ one_one_Code_integer )
         => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N6 ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ) ).

% power_strict_decreasing
thf(fact_1830_power__strict__decreasing,axiom,
    ! [N: nat,N6: nat,A: code_natural] :
      ( ( ord_less_nat @ N @ N6 )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_le5570908160329646204atural @ A @ one_one_Code_natural )
         => ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ N6 ) @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ) ).

% power_strict_decreasing
thf(fact_1831_power__strict__decreasing,axiom,
    ! [N: nat,N6: nat,A: rat] :
      ( ( ord_less_nat @ N @ N6 )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ( ord_less_rat @ A @ one_one_rat )
         => ( ord_less_rat @ ( power_power_rat @ A @ N6 ) @ ( power_power_rat @ A @ N ) ) ) ) ) ).

% power_strict_decreasing
thf(fact_1832_power__strict__decreasing,axiom,
    ! [N: nat,N6: nat,A: nat] :
      ( ( ord_less_nat @ N @ N6 )
     => ( ( ord_less_nat @ zero_zero_nat @ A )
       => ( ( ord_less_nat @ A @ one_one_nat )
         => ( ord_less_nat @ ( power_power_nat @ A @ N6 ) @ ( power_power_nat @ A @ N ) ) ) ) ) ).

% power_strict_decreasing
thf(fact_1833_power__strict__decreasing,axiom,
    ! [N: nat,N6: nat,A: int] :
      ( ( ord_less_nat @ N @ N6 )
     => ( ( ord_less_int @ zero_zero_int @ A )
       => ( ( ord_less_int @ A @ one_one_int )
         => ( ord_less_int @ ( power_power_int @ A @ N6 ) @ ( power_power_int @ A @ N ) ) ) ) ) ).

% power_strict_decreasing
thf(fact_1834_one__less__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ).

% one_less_power
thf(fact_1835_one__less__power,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_le5570908160329646204atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ).

% one_less_power
thf(fact_1836_one__less__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_rat @ one_one_rat @ ( power_power_rat @ A @ N ) ) ) ) ).

% one_less_power
thf(fact_1837_one__less__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_nat @ one_one_nat @ ( power_power_nat @ A @ N ) ) ) ) ).

% one_less_power
thf(fact_1838_one__less__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_int @ one_one_int @ ( power_power_int @ A @ N ) ) ) ) ).

% one_less_power
thf(fact_1839_abs__diff__less__iff,axiom,
    ! [X: code_integer,A: code_integer,R: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ X @ A ) ) @ R )
      = ( ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ A @ R ) @ X )
        & ( ord_le6747313008572928689nteger @ X @ ( plus_p5714425477246183910nteger @ A @ R ) ) ) ) ).

% abs_diff_less_iff
thf(fact_1840_abs__diff__less__iff,axiom,
    ! [X: rat,A: rat,R: rat] :
      ( ( ord_less_rat @ ( abs_abs_rat @ ( minus_minus_rat @ X @ A ) ) @ R )
      = ( ( ord_less_rat @ ( minus_minus_rat @ A @ R ) @ X )
        & ( ord_less_rat @ X @ ( plus_plus_rat @ A @ R ) ) ) ) ).

% abs_diff_less_iff
thf(fact_1841_abs__diff__less__iff,axiom,
    ! [X: int,A: int,R: int] :
      ( ( ord_less_int @ ( abs_abs_int @ ( minus_minus_int @ X @ A ) ) @ R )
      = ( ( ord_less_int @ ( minus_minus_int @ A @ R ) @ X )
        & ( ord_less_int @ X @ ( plus_plus_int @ A @ R ) ) ) ) ).

% abs_diff_less_iff
thf(fact_1842_add__strict__increasing2,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ord_le6747313008572928689nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1843_add__strict__increasing2,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ B @ C )
       => ( ord_le5570908160329646204atural @ B @ ( plus_p4538020629002901425atural @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1844_add__strict__increasing2,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ B @ C )
       => ( ord_less_rat @ B @ ( plus_plus_rat @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1845_add__strict__increasing2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1846_add__strict__increasing2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ C )
       => ( ord_less_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1847_add__strict__increasing,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ B @ C )
       => ( ord_le6747313008572928689nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1848_add__strict__increasing,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ B @ C )
       => ( ord_le5570908160329646204atural @ B @ ( plus_p4538020629002901425atural @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1849_add__strict__increasing,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ord_less_rat @ B @ ( plus_plus_rat @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1850_add__strict__increasing,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1851_add__strict__increasing,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ord_less_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1852_add__pos__nonneg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_1853_add__pos__nonneg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_1854_add__pos__nonneg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_1855_add__pos__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_1856_add__pos__nonneg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_1857_add__nonpos__neg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% add_nonpos_neg
thf(fact_1858_add__nonpos__neg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le5570908160329646204atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% add_nonpos_neg
thf(fact_1859_add__nonpos__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% add_nonpos_neg
thf(fact_1860_add__nonpos__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_neg
thf(fact_1861_add__nonpos__neg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_nonpos_neg
thf(fact_1862_add__nonneg__pos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_1863_add__nonneg__pos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_1864_add__nonneg__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_1865_add__nonneg__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_1866_add__nonneg__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_1867_add__neg__nonpos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% add_neg_nonpos
thf(fact_1868_add__neg__nonpos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% add_neg_nonpos
thf(fact_1869_add__neg__nonpos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% add_neg_nonpos
thf(fact_1870_add__neg__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_nonpos
thf(fact_1871_add__neg__nonpos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_neg_nonpos
thf(fact_1872_discrete,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [A4: code_integer] : ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A4 @ one_one_Code_integer ) ) ) ) ).

% discrete
thf(fact_1873_discrete,axiom,
    ( ord_less_nat
    = ( ^ [A4: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ A4 @ one_one_nat ) ) ) ) ).

% discrete
thf(fact_1874_discrete,axiom,
    ( ord_less_int
    = ( ^ [A4: int] : ( ord_less_eq_int @ ( plus_plus_int @ A4 @ one_one_int ) ) ) ) ).

% discrete
thf(fact_1875_le__minus__one__simps_I1_J,axiom,
    ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ zero_z3403309356797280102nteger ).

% le_minus_one_simps(1)
thf(fact_1876_le__minus__one__simps_I1_J,axiom,
    ord_less_eq_rat @ ( uminus_uminus_rat @ one_one_rat ) @ zero_zero_rat ).

% le_minus_one_simps(1)
thf(fact_1877_le__minus__one__simps_I1_J,axiom,
    ord_less_eq_int @ ( uminus_uminus_int @ one_one_int ) @ zero_zero_int ).

% le_minus_one_simps(1)
thf(fact_1878_le__minus__one__simps_I3_J,axiom,
    ~ ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% le_minus_one_simps(3)
thf(fact_1879_le__minus__one__simps_I3_J,axiom,
    ~ ( ord_less_eq_rat @ zero_zero_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% le_minus_one_simps(3)
thf(fact_1880_le__minus__one__simps_I3_J,axiom,
    ~ ( ord_less_eq_int @ zero_zero_int @ ( uminus_uminus_int @ one_one_int ) ) ).

% le_minus_one_simps(3)
thf(fact_1881_nat__diff__split__asm,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A @ B )
              & ~ ( P @ zero_zero_nat ) )
            | ? [D2: nat] :
                ( ( A
                  = ( plus_plus_nat @ B @ D2 ) )
                & ~ ( P @ D2 ) ) ) ) ) ).

% nat_diff_split_asm
thf(fact_1882_nat__diff__split,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ( ( ord_less_nat @ A @ B )
         => ( P @ zero_zero_nat ) )
        & ! [D2: nat] :
            ( ( A
              = ( plus_plus_nat @ B @ D2 ) )
           => ( P @ D2 ) ) ) ) ).

% nat_diff_split
thf(fact_1883_dense__eq0__I,axiom,
    ! [X: rat] :
      ( ! [E2: rat] :
          ( ( ord_less_rat @ zero_zero_rat @ E2 )
         => ( ord_less_eq_rat @ ( abs_abs_rat @ X ) @ E2 ) )
     => ( X = zero_zero_rat ) ) ).

% dense_eq0_I
thf(fact_1884_abs__minus__le__zero,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ ( abs_abs_Code_integer @ A ) ) @ zero_z3403309356797280102nteger ) ).

% abs_minus_le_zero
thf(fact_1885_abs__minus__le__zero,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( abs_abs_rat @ A ) ) @ zero_zero_rat ) ).

% abs_minus_le_zero
thf(fact_1886_abs__minus__le__zero,axiom,
    ! [A: int] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( abs_abs_int @ A ) ) @ zero_zero_int ) ).

% abs_minus_le_zero
thf(fact_1887_abs__eq__iff_H,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( abs_abs_Code_integer @ A )
        = B )
      = ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
        & ( ( A = B )
          | ( A
            = ( uminus1351360451143612070nteger @ B ) ) ) ) ) ).

% abs_eq_iff'
thf(fact_1888_abs__eq__iff_H,axiom,
    ! [A: rat,B: rat] :
      ( ( ( abs_abs_rat @ A )
        = B )
      = ( ( ord_less_eq_rat @ zero_zero_rat @ B )
        & ( ( A = B )
          | ( A
            = ( uminus_uminus_rat @ B ) ) ) ) ) ).

% abs_eq_iff'
thf(fact_1889_abs__eq__iff_H,axiom,
    ! [A: int,B: int] :
      ( ( ( abs_abs_int @ A )
        = B )
      = ( ( ord_less_eq_int @ zero_zero_int @ B )
        & ( ( A = B )
          | ( A
            = ( uminus_uminus_int @ B ) ) ) ) ) ).

% abs_eq_iff'
thf(fact_1890_eq__abs__iff_H,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A
        = ( abs_abs_Code_integer @ B ) )
      = ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
        & ( ( B = A )
          | ( B
            = ( uminus1351360451143612070nteger @ A ) ) ) ) ) ).

% eq_abs_iff'
thf(fact_1891_eq__abs__iff_H,axiom,
    ! [A: rat,B: rat] :
      ( ( A
        = ( abs_abs_rat @ B ) )
      = ( ( ord_less_eq_rat @ zero_zero_rat @ A )
        & ( ( B = A )
          | ( B
            = ( uminus_uminus_rat @ A ) ) ) ) ) ).

% eq_abs_iff'
thf(fact_1892_eq__abs__iff_H,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( abs_abs_int @ B ) )
      = ( ( ord_less_eq_int @ zero_zero_int @ A )
        & ( ( B = A )
          | ( B
            = ( uminus_uminus_int @ A ) ) ) ) ) ).

% eq_abs_iff'
thf(fact_1893_dbl__dec__def,axiom,
    ( neg_nu3811975205180677377ec_int
    = ( ^ [X4: int] : ( minus_minus_int @ ( plus_plus_int @ X4 @ X4 ) @ one_one_int ) ) ) ).

% dbl_dec_def
thf(fact_1894_dbl__dec__def,axiom,
    ( neg_nu7757733837767384882nteger
    = ( ^ [X4: code_integer] : ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ X4 @ X4 ) @ one_one_Code_integer ) ) ) ).

% dbl_dec_def
thf(fact_1895_dbl__dec__def,axiom,
    ( neg_nu3179335615603231917ec_rat
    = ( ^ [X4: rat] : ( minus_minus_rat @ ( plus_plus_rat @ X4 @ X4 ) @ one_one_rat ) ) ) ).

% dbl_dec_def
thf(fact_1896_neg__one__power__add__eq__neg__one__power__diff,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ ( plus_plus_nat @ N @ K ) )
        = ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ ( minus_minus_nat @ N @ K ) ) ) ) ).

% neg_one_power_add_eq_neg_one_power_diff
thf(fact_1897_neg__one__power__add__eq__neg__one__power__diff,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( plus_plus_nat @ N @ K ) )
        = ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( minus_minus_nat @ N @ K ) ) ) ) ).

% neg_one_power_add_eq_neg_one_power_diff
thf(fact_1898_neg__one__power__add__eq__neg__one__power__diff,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( plus_plus_nat @ N @ K ) )
        = ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( minus_minus_nat @ N @ K ) ) ) ) ).

% neg_one_power_add_eq_neg_one_power_diff
thf(fact_1899_field__le__epsilon,axiom,
    ! [X: rat,Y3: rat] :
      ( ! [E2: rat] :
          ( ( ord_less_rat @ zero_zero_rat @ E2 )
         => ( ord_less_eq_rat @ X @ ( plus_plus_rat @ Y3 @ E2 ) ) )
     => ( ord_less_eq_rat @ X @ Y3 ) ) ).

% field_le_epsilon
thf(fact_1900_Divides_Oadjust__div__eq,axiom,
    ! [Q2: int,R: int] :
      ( ( adjust_div @ ( product_Pair_int_int @ Q2 @ R ) )
      = ( plus_plus_int @ Q2 @ ( zero_n2684676970156552555ol_int @ ( R != zero_zero_int ) ) ) ) ).

% Divides.adjust_div_eq
thf(fact_1901_bezw__0,axiom,
    ! [X: nat] :
      ( ( bezw @ X @ zero_zero_nat )
      = ( product_Pair_int_int @ one_one_int @ zero_zero_int ) ) ).

% bezw_0
thf(fact_1902_frac__unique__iff,axiom,
    ! [X: rat,A: rat] :
      ( ( ( archimedean_frac_rat @ X )
        = A )
      = ( ( member_rat @ ( minus_minus_rat @ X @ A ) @ ring_1_Ints_rat )
        & ( ord_less_eq_rat @ zero_zero_rat @ A )
        & ( ord_less_rat @ A @ one_one_rat ) ) ) ).

% frac_unique_iff
thf(fact_1903_Nats__altdef2,axiom,
    ( semiri2551628265256775642nteger
    = ( collect_Code_integer
      @ ^ [N5: code_integer] :
          ( ( member_Code_integer @ N5 @ ring_11222124179247155820nteger )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ N5 ) ) ) ) ).

% Nats_altdef2
thf(fact_1904_Nats__altdef2,axiom,
    ( semiring_1_Nats_rat
    = ( collect_rat
      @ ^ [N5: rat] :
          ( ( member_rat @ N5 @ ring_1_Ints_rat )
          & ( ord_less_eq_rat @ zero_zero_rat @ N5 ) ) ) ) ).

% Nats_altdef2
thf(fact_1905_Nats__altdef2,axiom,
    ( semiring_1_Nats_int
    = ( collect_int
      @ ^ [N5: int] :
          ( ( member_int @ N5 @ ring_1_Ints_int )
          & ( ord_less_eq_int @ zero_zero_int @ N5 ) ) ) ) ).

% Nats_altdef2
thf(fact_1906_convex__bound__lt,axiom,
    ! [X: code_integer,A: code_integer,Y3: code_integer,U: code_integer,V: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X @ A )
     => ( ( ord_le6747313008572928689nteger @ Y3 @ A )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ U )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ V )
           => ( ( ( plus_p5714425477246183910nteger @ U @ V )
                = one_one_Code_integer )
             => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ U @ X ) @ ( times_3573771949741848930nteger @ V @ Y3 ) ) @ A ) ) ) ) ) ) ).

% convex_bound_lt
thf(fact_1907_convex__bound__lt,axiom,
    ! [X: rat,A: rat,Y3: rat,U: rat,V: rat] :
      ( ( ord_less_rat @ X @ A )
     => ( ( ord_less_rat @ Y3 @ A )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ U )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ V )
           => ( ( ( plus_plus_rat @ U @ V )
                = one_one_rat )
             => ( ord_less_rat @ ( plus_plus_rat @ ( times_times_rat @ U @ X ) @ ( times_times_rat @ V @ Y3 ) ) @ A ) ) ) ) ) ) ).

% convex_bound_lt
thf(fact_1908_convex__bound__lt,axiom,
    ! [X: int,A: int,Y3: int,U: int,V: int] :
      ( ( ord_less_int @ X @ A )
     => ( ( ord_less_int @ Y3 @ A )
       => ( ( ord_less_eq_int @ zero_zero_int @ U )
         => ( ( ord_less_eq_int @ zero_zero_int @ V )
           => ( ( ( plus_plus_int @ U @ V )
                = one_one_int )
             => ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ U @ X ) @ ( times_times_int @ V @ Y3 ) ) @ A ) ) ) ) ) ) ).

% convex_bound_lt
thf(fact_1909_zero__less__nat__eq,axiom,
    ! [Z: int] :
      ( ( ord_less_nat @ zero_zero_nat @ ( nat2 @ Z ) )
      = ( ord_less_int @ zero_zero_int @ Z ) ) ).

% zero_less_nat_eq
thf(fact_1910_of__int__1__less__iff,axiom,
    ! [Z: int] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( ring_18347121197199848620nteger @ Z ) )
      = ( ord_less_int @ one_one_int @ Z ) ) ).

% of_int_1_less_iff
thf(fact_1911_of__int__1__less__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_rat @ one_one_rat @ ( ring_1_of_int_rat @ Z ) )
      = ( ord_less_int @ one_one_int @ Z ) ) ).

% of_int_1_less_iff
thf(fact_1912_of__int__1__less__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ one_one_int @ ( ring_1_of_int_int @ Z ) )
      = ( ord_less_int @ one_one_int @ Z ) ) ).

% of_int_1_less_iff
thf(fact_1913_of__int__less__1__iff,axiom,
    ! [Z: int] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ Z ) @ one_one_Code_integer )
      = ( ord_less_int @ Z @ one_one_int ) ) ).

% of_int_less_1_iff
thf(fact_1914_of__int__less__1__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ Z ) @ one_one_rat )
      = ( ord_less_int @ Z @ one_one_int ) ) ).

% of_int_less_1_iff
thf(fact_1915_of__int__less__1__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ Z ) @ one_one_int )
      = ( ord_less_int @ Z @ one_one_int ) ) ).

% of_int_less_1_iff
thf(fact_1916_mult__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        | ( N = zero_zero_nat ) ) ) ).

% mult_is_0
thf(fact_1917_mult__0__right,axiom,
    ! [M: nat] :
      ( ( times_times_nat @ M @ zero_zero_nat )
      = zero_zero_nat ) ).

% mult_0_right
thf(fact_1918_mult__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ K @ M )
        = ( times_times_nat @ K @ N ) )
      = ( ( M = N )
        | ( K = zero_zero_nat ) ) ) ).

% mult_cancel1
thf(fact_1919_mult__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ( times_times_nat @ M @ K )
        = ( times_times_nat @ N @ K ) )
      = ( ( M = N )
        | ( K = zero_zero_nat ) ) ) ).

% mult_cancel2
thf(fact_1920_nat__1__eq__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( one_one_nat
        = ( times_times_nat @ M @ N ) )
      = ( ( M = one_one_nat )
        & ( N = one_one_nat ) ) ) ).

% nat_1_eq_mult_iff
thf(fact_1921_nat__mult__eq__1__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = one_one_nat )
      = ( ( M = one_one_nat )
        & ( N = one_one_nat ) ) ) ).

% nat_mult_eq_1_iff
thf(fact_1922_of__int__eq__iff,axiom,
    ! [W: int,Z: int] :
      ( ( ( ring_1_of_int_rat @ W )
        = ( ring_1_of_int_rat @ Z ) )
      = ( W = Z ) ) ).

% of_int_eq_iff
thf(fact_1923_of__int__eq__iff,axiom,
    ! [W: int,Z: int] :
      ( ( ( ring_1_of_int_int @ W )
        = ( ring_1_of_int_int @ Z ) )
      = ( W = Z ) ) ).

% of_int_eq_iff
thf(fact_1924_mult__zero__left,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% mult_zero_left
thf(fact_1925_mult__zero__left,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% mult_zero_left
thf(fact_1926_mult__zero__left,axiom,
    ! [A: int] :
      ( ( times_times_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% mult_zero_left
thf(fact_1927_mult__zero__left,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% mult_zero_left
thf(fact_1928_mult__zero__left,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ zero_zero_rat @ A )
      = zero_zero_rat ) ).

% mult_zero_left
thf(fact_1929_mult__zero__right,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ A @ zero_z2226904508553997617atural )
      = zero_z2226904508553997617atural ) ).

% mult_zero_right
thf(fact_1930_mult__zero__right,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ A @ zero_zero_nat )
      = zero_zero_nat ) ).

% mult_zero_right
thf(fact_1931_mult__zero__right,axiom,
    ! [A: int] :
      ( ( times_times_int @ A @ zero_zero_int )
      = zero_zero_int ) ).

% mult_zero_right
thf(fact_1932_mult__zero__right,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% mult_zero_right
thf(fact_1933_mult__zero__right,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ A @ zero_zero_rat )
      = zero_zero_rat ) ).

% mult_zero_right
thf(fact_1934_mult__eq__0__iff,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( times_2397367101498566445atural @ A @ B )
        = zero_z2226904508553997617atural )
      = ( ( A = zero_z2226904508553997617atural )
        | ( B = zero_z2226904508553997617atural ) ) ) ).

% mult_eq_0_iff
thf(fact_1935_mult__eq__0__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( times_times_nat @ A @ B )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        | ( B = zero_zero_nat ) ) ) ).

% mult_eq_0_iff
thf(fact_1936_mult__eq__0__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( times_times_int @ A @ B )
        = zero_zero_int )
      = ( ( A = zero_zero_int )
        | ( B = zero_zero_int ) ) ) ).

% mult_eq_0_iff
thf(fact_1937_mult__eq__0__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ B )
        = zero_z3403309356797280102nteger )
      = ( ( A = zero_z3403309356797280102nteger )
        | ( B = zero_z3403309356797280102nteger ) ) ) ).

% mult_eq_0_iff
thf(fact_1938_mult__eq__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( times_times_rat @ A @ B )
        = zero_zero_rat )
      = ( ( A = zero_zero_rat )
        | ( B = zero_zero_rat ) ) ) ).

% mult_eq_0_iff
thf(fact_1939_mult__cancel__left,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( ( times_2397367101498566445atural @ C @ A )
        = ( times_2397367101498566445atural @ C @ B ) )
      = ( ( C = zero_z2226904508553997617atural )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_1940_mult__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ( times_times_nat @ C @ A )
        = ( times_times_nat @ C @ B ) )
      = ( ( C = zero_zero_nat )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_1941_mult__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ( times_times_int @ C @ A )
        = ( times_times_int @ C @ B ) )
      = ( ( C = zero_zero_int )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_1942_mult__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ C @ A )
        = ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_1943_mult__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ( times_times_rat @ C @ A )
        = ( times_times_rat @ C @ B ) )
      = ( ( C = zero_zero_rat )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_1944_mult__cancel__right,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( ( times_2397367101498566445atural @ A @ C )
        = ( times_2397367101498566445atural @ B @ C ) )
      = ( ( C = zero_z2226904508553997617atural )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_1945_mult__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ( times_times_nat @ A @ C )
        = ( times_times_nat @ B @ C ) )
      = ( ( C = zero_zero_nat )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_1946_mult__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ( times_times_int @ A @ C )
        = ( times_times_int @ B @ C ) )
      = ( ( C = zero_zero_int )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_1947_mult__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ C )
        = ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_1948_mult__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ( times_times_rat @ A @ C )
        = ( times_times_rat @ B @ C ) )
      = ( ( C = zero_zero_rat )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_1949_mult_Oright__neutral,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ A @ one_one_Code_natural )
      = A ) ).

% mult.right_neutral
thf(fact_1950_mult_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ A @ one_one_nat )
      = A ) ).

% mult.right_neutral
thf(fact_1951_mult_Oright__neutral,axiom,
    ! [A: int] :
      ( ( times_times_int @ A @ one_one_int )
      = A ) ).

% mult.right_neutral
thf(fact_1952_mult_Oright__neutral,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ one_one_Code_integer )
      = A ) ).

% mult.right_neutral
thf(fact_1953_mult_Oright__neutral,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ A @ one_one_rat )
      = A ) ).

% mult.right_neutral
thf(fact_1954_mult__1,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ one_one_Code_natural @ A )
      = A ) ).

% mult_1
thf(fact_1955_mult__1,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ one_one_nat @ A )
      = A ) ).

% mult_1
thf(fact_1956_mult__1,axiom,
    ! [A: int] :
      ( ( times_times_int @ one_one_int @ A )
      = A ) ).

% mult_1
thf(fact_1957_mult__1,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ one_one_Code_integer @ A )
      = A ) ).

% mult_1
thf(fact_1958_mult__1,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ one_one_rat @ A )
      = A ) ).

% mult_1
thf(fact_1959_mult__minus__right,axiom,
    ! [A: int,B: int] :
      ( ( times_times_int @ A @ ( uminus_uminus_int @ B ) )
      = ( uminus_uminus_int @ ( times_times_int @ A @ B ) ) ) ).

% mult_minus_right
thf(fact_1960_mult__minus__right,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ ( uminus1351360451143612070nteger @ B ) )
      = ( uminus1351360451143612070nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ).

% mult_minus_right
thf(fact_1961_mult__minus__right,axiom,
    ! [A: rat,B: rat] :
      ( ( times_times_rat @ A @ ( uminus_uminus_rat @ B ) )
      = ( uminus_uminus_rat @ ( times_times_rat @ A @ B ) ) ) ).

% mult_minus_right
thf(fact_1962_minus__mult__minus,axiom,
    ! [A: int,B: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ A ) @ ( uminus_uminus_int @ B ) )
      = ( times_times_int @ A @ B ) ) ).

% minus_mult_minus
thf(fact_1963_minus__mult__minus,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( times_3573771949741848930nteger @ ( uminus1351360451143612070nteger @ A ) @ ( uminus1351360451143612070nteger @ B ) )
      = ( times_3573771949741848930nteger @ A @ B ) ) ).

% minus_mult_minus
thf(fact_1964_minus__mult__minus,axiom,
    ! [A: rat,B: rat] :
      ( ( times_times_rat @ ( uminus_uminus_rat @ A ) @ ( uminus_uminus_rat @ B ) )
      = ( times_times_rat @ A @ B ) ) ).

% minus_mult_minus
thf(fact_1965_mult__minus__left,axiom,
    ! [A: int,B: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ A ) @ B )
      = ( uminus_uminus_int @ ( times_times_int @ A @ B ) ) ) ).

% mult_minus_left
thf(fact_1966_mult__minus__left,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( times_3573771949741848930nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
      = ( uminus1351360451143612070nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ).

% mult_minus_left
thf(fact_1967_mult__minus__left,axiom,
    ! [A: rat,B: rat] :
      ( ( times_times_rat @ ( uminus_uminus_rat @ A ) @ B )
      = ( uminus_uminus_rat @ ( times_times_rat @ A @ B ) ) ) ).

% mult_minus_left
thf(fact_1968_of__nat__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri4939895301339042750nteger @ ( times_times_nat @ M @ N ) )
      = ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) ) ).

% of_nat_mult
thf(fact_1969_of__nat__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri681578069525770553at_rat @ ( times_times_nat @ M @ N ) )
      = ( times_times_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) ) ) ).

% of_nat_mult
thf(fact_1970_of__nat__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1314217659103216013at_int @ ( times_times_nat @ M @ N ) )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% of_nat_mult
thf(fact_1971_of__nat__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1316708129612266289at_nat @ ( times_times_nat @ M @ N ) )
      = ( times_times_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ).

% of_nat_mult
thf(fact_1972_nat__0__less__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% nat_0_less_mult_iff
thf(fact_1973_mult__less__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M @ N ) ) ) ).

% mult_less_cancel2
thf(fact_1974_abs__mult__self__eq,axiom,
    ! [A: int] :
      ( ( times_times_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ A ) )
      = ( times_times_int @ A @ A ) ) ).

% abs_mult_self_eq
thf(fact_1975_abs__mult__self__eq,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ A ) )
      = ( times_3573771949741848930nteger @ A @ A ) ) ).

% abs_mult_self_eq
thf(fact_1976_abs__mult__self__eq,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ A ) )
      = ( times_times_rat @ A @ A ) ) ).

% abs_mult_self_eq
thf(fact_1977_of__int__mult,axiom,
    ! [W: int,Z: int] :
      ( ( ring_1_of_int_int @ ( times_times_int @ W @ Z ) )
      = ( times_times_int @ ( ring_1_of_int_int @ W ) @ ( ring_1_of_int_int @ Z ) ) ) ).

% of_int_mult
thf(fact_1978_of__int__mult,axiom,
    ! [W: int,Z: int] :
      ( ( ring_18347121197199848620nteger @ ( times_times_int @ W @ Z ) )
      = ( times_3573771949741848930nteger @ ( ring_18347121197199848620nteger @ W ) @ ( ring_18347121197199848620nteger @ Z ) ) ) ).

% of_int_mult
thf(fact_1979_of__int__mult,axiom,
    ! [W: int,Z: int] :
      ( ( ring_1_of_int_rat @ ( times_times_int @ W @ Z ) )
      = ( times_times_rat @ ( ring_1_of_int_rat @ W ) @ ( ring_1_of_int_rat @ Z ) ) ) ).

% of_int_mult
thf(fact_1980_diff__diff__cancel,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I ) )
        = I ) ) ).

% diff_diff_cancel
thf(fact_1981_of__int__power__eq__of__int__cancel__iff,axiom,
    ! [X: int,B: int,W: nat] :
      ( ( ( ring_1_of_int_rat @ X )
        = ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W ) )
      = ( X
        = ( power_power_int @ B @ W ) ) ) ).

% of_int_power_eq_of_int_cancel_iff
thf(fact_1982_of__int__power__eq__of__int__cancel__iff,axiom,
    ! [X: int,B: int,W: nat] :
      ( ( ( ring_1_of_int_int @ X )
        = ( power_power_int @ ( ring_1_of_int_int @ B ) @ W ) )
      = ( X
        = ( power_power_int @ B @ W ) ) ) ).

% of_int_power_eq_of_int_cancel_iff
thf(fact_1983_of__int__eq__of__int__power__cancel__iff,axiom,
    ! [B: int,W: nat,X: int] :
      ( ( ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W )
        = ( ring_1_of_int_rat @ X ) )
      = ( ( power_power_int @ B @ W )
        = X ) ) ).

% of_int_eq_of_int_power_cancel_iff
thf(fact_1984_of__int__eq__of__int__power__cancel__iff,axiom,
    ! [B: int,W: nat,X: int] :
      ( ( ( power_power_int @ ( ring_1_of_int_int @ B ) @ W )
        = ( ring_1_of_int_int @ X ) )
      = ( ( power_power_int @ B @ W )
        = X ) ) ).

% of_int_eq_of_int_power_cancel_iff
thf(fact_1985_of__int__power,axiom,
    ! [Z: int,N: nat] :
      ( ( ring_1_of_int_rat @ ( power_power_int @ Z @ N ) )
      = ( power_power_rat @ ( ring_1_of_int_rat @ Z ) @ N ) ) ).

% of_int_power
thf(fact_1986_of__int__power,axiom,
    ! [Z: int,N: nat] :
      ( ( ring_1_of_int_int @ ( power_power_int @ Z @ N ) )
      = ( power_power_int @ ( ring_1_of_int_int @ Z ) @ N ) ) ).

% of_int_power
thf(fact_1987_nat__int,axiom,
    ! [N: nat] :
      ( ( nat2 @ ( semiri1314217659103216013at_int @ N ) )
      = N ) ).

% nat_int
thf(fact_1988_mult__cancel__left1,axiom,
    ! [C: int,B: int] :
      ( ( C
        = ( times_times_int @ C @ B ) )
      = ( ( C = zero_zero_int )
        | ( B = one_one_int ) ) ) ).

% mult_cancel_left1
thf(fact_1989_mult__cancel__left1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( C
        = ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( B = one_one_Code_integer ) ) ) ).

% mult_cancel_left1
thf(fact_1990_mult__cancel__left1,axiom,
    ! [C: rat,B: rat] :
      ( ( C
        = ( times_times_rat @ C @ B ) )
      = ( ( C = zero_zero_rat )
        | ( B = one_one_rat ) ) ) ).

% mult_cancel_left1
thf(fact_1991_mult__cancel__left2,axiom,
    ! [C: int,A: int] :
      ( ( ( times_times_int @ C @ A )
        = C )
      = ( ( C = zero_zero_int )
        | ( A = one_one_int ) ) ) ).

% mult_cancel_left2
thf(fact_1992_mult__cancel__left2,axiom,
    ! [C: code_integer,A: code_integer] :
      ( ( ( times_3573771949741848930nteger @ C @ A )
        = C )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( A = one_one_Code_integer ) ) ) ).

% mult_cancel_left2
thf(fact_1993_mult__cancel__left2,axiom,
    ! [C: rat,A: rat] :
      ( ( ( times_times_rat @ C @ A )
        = C )
      = ( ( C = zero_zero_rat )
        | ( A = one_one_rat ) ) ) ).

% mult_cancel_left2
thf(fact_1994_mult__cancel__right1,axiom,
    ! [C: int,B: int] :
      ( ( C
        = ( times_times_int @ B @ C ) )
      = ( ( C = zero_zero_int )
        | ( B = one_one_int ) ) ) ).

% mult_cancel_right1
thf(fact_1995_mult__cancel__right1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( C
        = ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( B = one_one_Code_integer ) ) ) ).

% mult_cancel_right1
thf(fact_1996_mult__cancel__right1,axiom,
    ! [C: rat,B: rat] :
      ( ( C
        = ( times_times_rat @ B @ C ) )
      = ( ( C = zero_zero_rat )
        | ( B = one_one_rat ) ) ) ).

% mult_cancel_right1
thf(fact_1997_mult__cancel__right2,axiom,
    ! [A: int,C: int] :
      ( ( ( times_times_int @ A @ C )
        = C )
      = ( ( C = zero_zero_int )
        | ( A = one_one_int ) ) ) ).

% mult_cancel_right2
thf(fact_1998_mult__cancel__right2,axiom,
    ! [A: code_integer,C: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ C )
        = C )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( A = one_one_Code_integer ) ) ) ).

% mult_cancel_right2
thf(fact_1999_mult__cancel__right2,axiom,
    ! [A: rat,C: rat] :
      ( ( ( times_times_rat @ A @ C )
        = C )
      = ( ( C = zero_zero_rat )
        | ( A = one_one_rat ) ) ) ).

% mult_cancel_right2
thf(fact_2000_mult__minus1,axiom,
    ! [Z: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ one_one_int ) @ Z )
      = ( uminus_uminus_int @ Z ) ) ).

% mult_minus1
thf(fact_2001_mult__minus1,axiom,
    ! [Z: code_integer] :
      ( ( times_3573771949741848930nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ Z )
      = ( uminus1351360451143612070nteger @ Z ) ) ).

% mult_minus1
thf(fact_2002_mult__minus1,axiom,
    ! [Z: rat] :
      ( ( times_times_rat @ ( uminus_uminus_rat @ one_one_rat ) @ Z )
      = ( uminus_uminus_rat @ Z ) ) ).

% mult_minus1
thf(fact_2003_mult__minus1__right,axiom,
    ! [Z: int] :
      ( ( times_times_int @ Z @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ Z ) ) ).

% mult_minus1_right
thf(fact_2004_mult__minus1__right,axiom,
    ! [Z: code_integer] :
      ( ( times_3573771949741848930nteger @ Z @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( uminus1351360451143612070nteger @ Z ) ) ).

% mult_minus1_right
thf(fact_2005_mult__minus1__right,axiom,
    ! [Z: rat] :
      ( ( times_times_rat @ Z @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( uminus_uminus_rat @ Z ) ) ).

% mult_minus1_right
thf(fact_2006_mult__le__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% mult_le_cancel2
thf(fact_2007_of__int__0,axiom,
    ( ( ring_18347121197199848620nteger @ zero_zero_int )
    = zero_z3403309356797280102nteger ) ).

% of_int_0
thf(fact_2008_of__int__0,axiom,
    ( ( ring_1_of_int_rat @ zero_zero_int )
    = zero_zero_rat ) ).

% of_int_0
thf(fact_2009_of__int__0,axiom,
    ( ( ring_1_of_int_int @ zero_zero_int )
    = zero_zero_int ) ).

% of_int_0
thf(fact_2010_of__int__0__eq__iff,axiom,
    ! [Z: int] :
      ( ( zero_z3403309356797280102nteger
        = ( ring_18347121197199848620nteger @ Z ) )
      = ( Z = zero_zero_int ) ) ).

% of_int_0_eq_iff
thf(fact_2011_of__int__0__eq__iff,axiom,
    ! [Z: int] :
      ( ( zero_zero_rat
        = ( ring_1_of_int_rat @ Z ) )
      = ( Z = zero_zero_int ) ) ).

% of_int_0_eq_iff
thf(fact_2012_of__int__0__eq__iff,axiom,
    ! [Z: int] :
      ( ( zero_zero_int
        = ( ring_1_of_int_int @ Z ) )
      = ( Z = zero_zero_int ) ) ).

% of_int_0_eq_iff
thf(fact_2013_of__int__eq__0__iff,axiom,
    ! [Z: int] :
      ( ( ( ring_18347121197199848620nteger @ Z )
        = zero_z3403309356797280102nteger )
      = ( Z = zero_zero_int ) ) ).

% of_int_eq_0_iff
thf(fact_2014_of__int__eq__0__iff,axiom,
    ! [Z: int] :
      ( ( ( ring_1_of_int_rat @ Z )
        = zero_zero_rat )
      = ( Z = zero_zero_int ) ) ).

% of_int_eq_0_iff
thf(fact_2015_of__int__eq__0__iff,axiom,
    ! [Z: int] :
      ( ( ( ring_1_of_int_int @ Z )
        = zero_zero_int )
      = ( Z = zero_zero_int ) ) ).

% of_int_eq_0_iff
thf(fact_2016_of__int__le__iff,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ W ) @ ( ring_1_of_int_rat @ Z ) )
      = ( ord_less_eq_int @ W @ Z ) ) ).

% of_int_le_iff
thf(fact_2017_of__int__le__iff,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ W ) @ ( ring_1_of_int_int @ Z ) )
      = ( ord_less_eq_int @ W @ Z ) ) ).

% of_int_le_iff
thf(fact_2018_of__int__less__iff,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ W ) @ ( ring_1_of_int_rat @ Z ) )
      = ( ord_less_int @ W @ Z ) ) ).

% of_int_less_iff
thf(fact_2019_of__int__less__iff,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ W ) @ ( ring_1_of_int_int @ Z ) )
      = ( ord_less_int @ W @ Z ) ) ).

% of_int_less_iff
thf(fact_2020_of__int__1,axiom,
    ( ( ring_18347121197199848620nteger @ one_one_int )
    = one_one_Code_integer ) ).

% of_int_1
thf(fact_2021_of__int__1,axiom,
    ( ( ring_1_of_int_rat @ one_one_int )
    = one_one_rat ) ).

% of_int_1
thf(fact_2022_of__int__1,axiom,
    ( ( ring_1_of_int_int @ one_one_int )
    = one_one_int ) ).

% of_int_1
thf(fact_2023_of__int__eq__1__iff,axiom,
    ! [Z: int] :
      ( ( ( ring_18347121197199848620nteger @ Z )
        = one_one_Code_integer )
      = ( Z = one_one_int ) ) ).

% of_int_eq_1_iff
thf(fact_2024_of__int__eq__1__iff,axiom,
    ! [Z: int] :
      ( ( ( ring_1_of_int_rat @ Z )
        = one_one_rat )
      = ( Z = one_one_int ) ) ).

% of_int_eq_1_iff
thf(fact_2025_of__int__eq__1__iff,axiom,
    ! [Z: int] :
      ( ( ( ring_1_of_int_int @ Z )
        = one_one_int )
      = ( Z = one_one_int ) ) ).

% of_int_eq_1_iff
thf(fact_2026_of__int__add,axiom,
    ! [W: int,Z: int] :
      ( ( ring_1_of_int_rat @ ( plus_plus_int @ W @ Z ) )
      = ( plus_plus_rat @ ( ring_1_of_int_rat @ W ) @ ( ring_1_of_int_rat @ Z ) ) ) ).

% of_int_add
thf(fact_2027_of__int__add,axiom,
    ! [W: int,Z: int] :
      ( ( ring_1_of_int_int @ ( plus_plus_int @ W @ Z ) )
      = ( plus_plus_int @ ( ring_1_of_int_int @ W ) @ ( ring_1_of_int_int @ Z ) ) ) ).

% of_int_add
thf(fact_2028_of__int__minus,axiom,
    ! [Z: int] :
      ( ( ring_1_of_int_int @ ( uminus_uminus_int @ Z ) )
      = ( uminus_uminus_int @ ( ring_1_of_int_int @ Z ) ) ) ).

% of_int_minus
thf(fact_2029_of__int__minus,axiom,
    ! [Z: int] :
      ( ( ring_18347121197199848620nteger @ ( uminus_uminus_int @ Z ) )
      = ( uminus1351360451143612070nteger @ ( ring_18347121197199848620nteger @ Z ) ) ) ).

% of_int_minus
thf(fact_2030_of__int__minus,axiom,
    ! [Z: int] :
      ( ( ring_1_of_int_rat @ ( uminus_uminus_int @ Z ) )
      = ( uminus_uminus_rat @ ( ring_1_of_int_rat @ Z ) ) ) ).

% of_int_minus
thf(fact_2031_of__int__diff,axiom,
    ! [W: int,Z: int] :
      ( ( ring_1_of_int_int @ ( minus_minus_int @ W @ Z ) )
      = ( minus_minus_int @ ( ring_1_of_int_int @ W ) @ ( ring_1_of_int_int @ Z ) ) ) ).

% of_int_diff
thf(fact_2032_of__int__diff,axiom,
    ! [W: int,Z: int] :
      ( ( ring_18347121197199848620nteger @ ( minus_minus_int @ W @ Z ) )
      = ( minus_8373710615458151222nteger @ ( ring_18347121197199848620nteger @ W ) @ ( ring_18347121197199848620nteger @ Z ) ) ) ).

% of_int_diff
thf(fact_2033_of__int__diff,axiom,
    ! [W: int,Z: int] :
      ( ( ring_1_of_int_rat @ ( minus_minus_int @ W @ Z ) )
      = ( minus_minus_rat @ ( ring_1_of_int_rat @ W ) @ ( ring_1_of_int_rat @ Z ) ) ) ).

% of_int_diff
thf(fact_2034_of__int__of__nat__eq,axiom,
    ! [N: nat] :
      ( ( ring_1_of_int_rat @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri681578069525770553at_rat @ N ) ) ).

% of_int_of_nat_eq
thf(fact_2035_of__int__of__nat__eq,axiom,
    ! [N: nat] :
      ( ( ring_1_of_int_int @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri1314217659103216013at_int @ N ) ) ).

% of_int_of_nat_eq
thf(fact_2036_of__int__abs,axiom,
    ! [X: int] :
      ( ( ring_18347121197199848620nteger @ ( abs_abs_int @ X ) )
      = ( abs_abs_Code_integer @ ( ring_18347121197199848620nteger @ X ) ) ) ).

% of_int_abs
thf(fact_2037_of__int__abs,axiom,
    ! [X: int] :
      ( ( ring_1_of_int_rat @ ( abs_abs_int @ X ) )
      = ( abs_abs_rat @ ( ring_1_of_int_rat @ X ) ) ) ).

% of_int_abs
thf(fact_2038_of__int__abs,axiom,
    ! [X: int] :
      ( ( ring_1_of_int_int @ ( abs_abs_int @ X ) )
      = ( abs_abs_int @ ( ring_1_of_int_int @ X ) ) ) ).

% of_int_abs
thf(fact_2039_frac__of__int,axiom,
    ! [Z: int] :
      ( ( archimedean_frac_rat @ ( ring_1_of_int_rat @ Z ) )
      = zero_zero_rat ) ).

% frac_of_int
thf(fact_2040_frac__eq__0__iff,axiom,
    ! [X: rat] :
      ( ( ( archimedean_frac_rat @ X )
        = zero_zero_rat )
      = ( member_rat @ X @ ring_1_Ints_rat ) ) ).

% frac_eq_0_iff
thf(fact_2041_of__int__of__bool,axiom,
    ! [P: $o] :
      ( ( ring_1_of_int_rat @ ( zero_n2684676970156552555ol_int @ P ) )
      = ( zero_n2052037380579107095ol_rat @ P ) ) ).

% of_int_of_bool
thf(fact_2042_of__int__of__bool,axiom,
    ! [P: $o] :
      ( ( ring_1_of_int_int @ ( zero_n2684676970156552555ol_int @ P ) )
      = ( zero_n2684676970156552555ol_int @ P ) ) ).

% of_int_of_bool
thf(fact_2043_nat__of__bool,axiom,
    ! [P: $o] :
      ( ( nat2 @ ( zero_n2684676970156552555ol_int @ P ) )
      = ( zero_n2687167440665602831ol_nat @ P ) ) ).

% nat_of_bool
thf(fact_2044_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) )
      = one_one_int ) ).

% minus_one_mult_self
thf(fact_2045_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) )
      = one_one_Code_integer ) ).

% minus_one_mult_self
thf(fact_2046_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) )
      = one_one_rat ) ).

% minus_one_mult_self
thf(fact_2047_left__minus__one__mult__self,axiom,
    ! [N: nat,A: int] :
      ( ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_2048_left__minus__one__mult__self,axiom,
    ! [N: nat,A: code_integer] :
      ( ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_2049_left__minus__one__mult__self,axiom,
    ! [N: nat,A: rat] :
      ( ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_2050_of__int__power__le__of__int__cancel__iff,axiom,
    ! [X: int,B: int,W: nat] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ X ) @ ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W ) )
      = ( ord_less_eq_int @ X @ ( power_power_int @ B @ W ) ) ) ).

% of_int_power_le_of_int_cancel_iff
thf(fact_2051_of__int__power__le__of__int__cancel__iff,axiom,
    ! [X: int,B: int,W: nat] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ X ) @ ( power_power_int @ ( ring_1_of_int_int @ B ) @ W ) )
      = ( ord_less_eq_int @ X @ ( power_power_int @ B @ W ) ) ) ).

% of_int_power_le_of_int_cancel_iff
thf(fact_2052_of__int__le__of__int__power__cancel__iff,axiom,
    ! [B: int,W: nat,X: int] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W ) @ ( ring_1_of_int_rat @ X ) )
      = ( ord_less_eq_int @ ( power_power_int @ B @ W ) @ X ) ) ).

% of_int_le_of_int_power_cancel_iff
thf(fact_2053_of__int__le__of__int__power__cancel__iff,axiom,
    ! [B: int,W: nat,X: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( ring_1_of_int_int @ B ) @ W ) @ ( ring_1_of_int_int @ X ) )
      = ( ord_less_eq_int @ ( power_power_int @ B @ W ) @ X ) ) ).

% of_int_le_of_int_power_cancel_iff
thf(fact_2054_of__int__power__less__of__int__cancel__iff,axiom,
    ! [X: int,B: int,W: nat] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ X ) @ ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W ) )
      = ( ord_less_int @ X @ ( power_power_int @ B @ W ) ) ) ).

% of_int_power_less_of_int_cancel_iff
thf(fact_2055_of__int__power__less__of__int__cancel__iff,axiom,
    ! [X: int,B: int,W: nat] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ X ) @ ( power_power_int @ ( ring_1_of_int_int @ B ) @ W ) )
      = ( ord_less_int @ X @ ( power_power_int @ B @ W ) ) ) ).

% of_int_power_less_of_int_cancel_iff
thf(fact_2056_of__int__less__of__int__power__cancel__iff,axiom,
    ! [B: int,W: nat,X: int] :
      ( ( ord_less_rat @ ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W ) @ ( ring_1_of_int_rat @ X ) )
      = ( ord_less_int @ ( power_power_int @ B @ W ) @ X ) ) ).

% of_int_less_of_int_power_cancel_iff
thf(fact_2057_of__int__less__of__int__power__cancel__iff,axiom,
    ! [B: int,W: nat,X: int] :
      ( ( ord_less_int @ ( power_power_int @ ( ring_1_of_int_int @ B ) @ W ) @ ( ring_1_of_int_int @ X ) )
      = ( ord_less_int @ ( power_power_int @ B @ W ) @ X ) ) ).

% of_int_less_of_int_power_cancel_iff
thf(fact_2058_nat__0__iff,axiom,
    ! [I: int] :
      ( ( ( nat2 @ I )
        = zero_zero_nat )
      = ( ord_less_eq_int @ I @ zero_zero_int ) ) ).

% nat_0_iff
thf(fact_2059_nat__le__0,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ Z @ zero_zero_int )
     => ( ( nat2 @ Z )
        = zero_zero_nat ) ) ).

% nat_le_0
thf(fact_2060_zless__nat__conj,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_nat @ ( nat2 @ W ) @ ( nat2 @ Z ) )
      = ( ( ord_less_int @ zero_zero_int @ Z )
        & ( ord_less_int @ W @ Z ) ) ) ).

% zless_nat_conj
thf(fact_2061_sgn__mult__self__eq,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ ( sgn_sgn_Code_integer @ A ) @ ( sgn_sgn_Code_integer @ A ) )
      = ( zero_n356916108424825756nteger @ ( A != zero_z3403309356797280102nteger ) ) ) ).

% sgn_mult_self_eq
thf(fact_2062_sgn__mult__self__eq,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ ( sgn_sgn_rat @ A ) @ ( sgn_sgn_rat @ A ) )
      = ( zero_n2052037380579107095ol_rat @ ( A != zero_zero_rat ) ) ) ).

% sgn_mult_self_eq
thf(fact_2063_sgn__mult__self__eq,axiom,
    ! [A: int] :
      ( ( times_times_int @ ( sgn_sgn_int @ A ) @ ( sgn_sgn_int @ A ) )
      = ( zero_n2684676970156552555ol_int @ ( A != zero_zero_int ) ) ) ).

% sgn_mult_self_eq
thf(fact_2064_int__nat__eq,axiom,
    ! [Z: int] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ Z )
       => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z ) )
          = Z ) )
      & ( ~ ( ord_less_eq_int @ zero_zero_int @ Z )
       => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z ) )
          = zero_zero_int ) ) ) ).

% int_nat_eq
thf(fact_2065_nat__zminus__int,axiom,
    ! [N: nat] :
      ( ( nat2 @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) )
      = zero_zero_nat ) ).

% nat_zminus_int
thf(fact_2066_frac__gt__0__iff,axiom,
    ! [X: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( archimedean_frac_rat @ X ) )
      = ( ~ ( member_rat @ X @ ring_1_Ints_rat ) ) ) ).

% frac_gt_0_iff
thf(fact_2067_of__int__0__le__iff,axiom,
    ! [Z: int] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( ring_18347121197199848620nteger @ Z ) )
      = ( ord_less_eq_int @ zero_zero_int @ Z ) ) ).

% of_int_0_le_iff
thf(fact_2068_of__int__0__le__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( ring_1_of_int_rat @ Z ) )
      = ( ord_less_eq_int @ zero_zero_int @ Z ) ) ).

% of_int_0_le_iff
thf(fact_2069_of__int__0__le__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( ring_1_of_int_int @ Z ) )
      = ( ord_less_eq_int @ zero_zero_int @ Z ) ) ).

% of_int_0_le_iff
thf(fact_2070_of__int__le__0__iff,axiom,
    ! [Z: int] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ Z ) @ zero_z3403309356797280102nteger )
      = ( ord_less_eq_int @ Z @ zero_zero_int ) ) ).

% of_int_le_0_iff
thf(fact_2071_of__int__le__0__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z ) @ zero_zero_rat )
      = ( ord_less_eq_int @ Z @ zero_zero_int ) ) ).

% of_int_le_0_iff
thf(fact_2072_of__int__le__0__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ Z ) @ zero_zero_int )
      = ( ord_less_eq_int @ Z @ zero_zero_int ) ) ).

% of_int_le_0_iff
thf(fact_2073_of__int__0__less__iff,axiom,
    ! [Z: int] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( ring_18347121197199848620nteger @ Z ) )
      = ( ord_less_int @ zero_zero_int @ Z ) ) ).

% of_int_0_less_iff
thf(fact_2074_of__int__0__less__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_rat @ zero_zero_rat @ ( ring_1_of_int_rat @ Z ) )
      = ( ord_less_int @ zero_zero_int @ Z ) ) ).

% of_int_0_less_iff
thf(fact_2075_of__int__0__less__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ zero_zero_int @ ( ring_1_of_int_int @ Z ) )
      = ( ord_less_int @ zero_zero_int @ Z ) ) ).

% of_int_0_less_iff
thf(fact_2076_of__int__less__0__iff,axiom,
    ! [Z: int] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ Z ) @ zero_z3403309356797280102nteger )
      = ( ord_less_int @ Z @ zero_zero_int ) ) ).

% of_int_less_0_iff
thf(fact_2077_of__int__less__0__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ Z ) @ zero_zero_rat )
      = ( ord_less_int @ Z @ zero_zero_int ) ) ).

% of_int_less_0_iff
thf(fact_2078_of__int__less__0__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ Z ) @ zero_zero_int )
      = ( ord_less_int @ Z @ zero_zero_int ) ) ).

% of_int_less_0_iff
thf(fact_2079_of__int__le__1__iff,axiom,
    ! [Z: int] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ Z ) @ one_one_Code_integer )
      = ( ord_less_eq_int @ Z @ one_one_int ) ) ).

% of_int_le_1_iff
thf(fact_2080_of__int__le__1__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z ) @ one_one_rat )
      = ( ord_less_eq_int @ Z @ one_one_int ) ) ).

% of_int_le_1_iff
thf(fact_2081_of__int__le__1__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ Z ) @ one_one_int )
      = ( ord_less_eq_int @ Z @ one_one_int ) ) ).

% of_int_le_1_iff
thf(fact_2082_of__int__1__le__iff,axiom,
    ! [Z: int] :
      ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( ring_18347121197199848620nteger @ Z ) )
      = ( ord_less_eq_int @ one_one_int @ Z ) ) ).

% of_int_1_le_iff
thf(fact_2083_of__int__1__le__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_rat @ one_one_rat @ ( ring_1_of_int_rat @ Z ) )
      = ( ord_less_eq_int @ one_one_int @ Z ) ) ).

% of_int_1_le_iff
thf(fact_2084_of__int__1__le__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ one_one_int @ ( ring_1_of_int_int @ Z ) )
      = ( ord_less_eq_int @ one_one_int @ Z ) ) ).

% of_int_1_le_iff
thf(fact_2085_of__nat__nat,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( semiri681578069525770553at_rat @ ( nat2 @ Z ) )
        = ( ring_1_of_int_rat @ Z ) ) ) ).

% of_nat_nat
thf(fact_2086_of__nat__nat,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z ) )
        = ( ring_1_of_int_int @ Z ) ) ) ).

% of_nat_nat
thf(fact_2087_nat__times__as__int,axiom,
    ( times_times_nat
    = ( ^ [A4: nat,B4: nat] : ( nat2 @ ( times_times_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ) ).

% nat_times_as_int
thf(fact_2088_nat__mult__distrib,axiom,
    ! [Z: int,Z4: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( nat2 @ ( times_times_int @ Z @ Z4 ) )
        = ( times_times_nat @ ( nat2 @ Z ) @ ( nat2 @ Z4 ) ) ) ) ).

% nat_mult_distrib
thf(fact_2089_int__distrib_I4_J,axiom,
    ! [W: int,Z1: int,Z22: int] :
      ( ( times_times_int @ W @ ( minus_minus_int @ Z1 @ Z22 ) )
      = ( minus_minus_int @ ( times_times_int @ W @ Z1 ) @ ( times_times_int @ W @ Z22 ) ) ) ).

% int_distrib(4)
thf(fact_2090_int__distrib_I3_J,axiom,
    ! [Z1: int,Z22: int,W: int] :
      ( ( times_times_int @ ( minus_minus_int @ Z1 @ Z22 ) @ W )
      = ( minus_minus_int @ ( times_times_int @ Z1 @ W ) @ ( times_times_int @ Z22 @ W ) ) ) ).

% int_distrib(3)
thf(fact_2091_le__cube,axiom,
    ! [M: nat] : ( ord_less_eq_nat @ M @ ( times_times_nat @ M @ ( times_times_nat @ M @ M ) ) ) ).

% le_cube
thf(fact_2092_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_2093_nat__mono,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ X @ Y3 )
     => ( ord_less_eq_nat @ ( nat2 @ X ) @ ( nat2 @ Y3 ) ) ) ).

% nat_mono
thf(fact_2094_le__trans,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ J @ K )
       => ( ord_less_eq_nat @ I @ K ) ) ) ).

% le_trans
thf(fact_2095_eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( M = N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% eq_imp_le
thf(fact_2096_le__square,axiom,
    ! [M: nat] : ( ord_less_eq_nat @ M @ ( times_times_nat @ M @ M ) ) ).

% le_square
thf(fact_2097_le__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( M = N ) ) ) ).

% le_antisym
thf(fact_2098_eq__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ( minus_minus_nat @ M @ K )
            = ( minus_minus_nat @ N @ K ) )
          = ( M = N ) ) ) ) ).

% eq_diff_iff
thf(fact_2099_le__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% le_diff_iff
thf(fact_2100_diff__commute,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I @ K ) @ J ) ) ).

% diff_commute
thf(fact_2101_Nat_Odiff__diff__eq,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( minus_minus_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( minus_minus_nat @ M @ N ) ) ) ) ).

% Nat.diff_diff_eq
thf(fact_2102_diff__le__mono,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M @ L ) @ ( minus_minus_nat @ N @ L ) ) ) ).

% diff_le_mono
thf(fact_2103_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_2104_le__diff__iff_H,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C @ A ) @ ( minus_minus_nat @ C @ B ) )
          = ( ord_less_eq_nat @ B @ A ) ) ) ) ).

% le_diff_iff'
thf(fact_2105_mult__le__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J @ L ) ) ) ) ).

% mult_le_mono
thf(fact_2106_diff__le__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ).

% diff_le_mono2
thf(fact_2107_mult__le__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J @ K ) ) ) ).

% mult_le_mono1
thf(fact_2108_mult__le__mono2,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( times_times_nat @ K @ I ) @ ( times_times_nat @ K @ J ) ) ) ).

% mult_le_mono2
thf(fact_2109_nat__le__linear,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
      | ( ord_less_eq_nat @ N @ M ) ) ).

% nat_le_linear
thf(fact_2110_diff__mult__distrib,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ M @ N ) @ K )
      = ( minus_minus_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) ) ) ).

% diff_mult_distrib
thf(fact_2111_diff__mult__distrib2,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( minus_minus_nat @ M @ N ) )
      = ( minus_minus_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% diff_mult_distrib2
thf(fact_2112_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y4: nat] :
            ( ( P @ Y4 )
           => ( ord_less_eq_nat @ Y4 @ B ) )
       => ? [X5: nat] :
            ( ( P @ X5 )
            & ! [Y6: nat] :
                ( ( P @ Y6 )
               => ( ord_less_eq_nat @ Y6 @ X5 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_2113_verit__la__generic,axiom,
    ! [A: int,X: int] :
      ( ( ord_less_eq_int @ A @ X )
      | ( A = X )
      | ( ord_less_eq_int @ X @ A ) ) ).

% verit_la_generic
thf(fact_2114_pred__subset__eq,axiom,
    ! [R5: set_se7855581050983116737at_nat,S3: set_se7855581050983116737at_nat] :
      ( ( ord_le5866676684937102012_nat_o
        @ ^ [X4: set_Pr1261947904930325089at_nat] : ( member2643936169264416010at_nat @ X4 @ R5 )
        @ ^ [X4: set_Pr1261947904930325089at_nat] : ( member2643936169264416010at_nat @ X4 @ S3 ) )
      = ( ord_le2077887516847798113at_nat @ R5 @ S3 ) ) ).

% pred_subset_eq
thf(fact_2115_pred__subset__eq,axiom,
    ! [R5: set_se6260736226359567993nt_int,S3: set_se6260736226359567993nt_int] :
      ( ( ord_le8334417538754933252_int_o
        @ ^ [X4: set_Pr958786334691620121nt_int] : ( member2340774599025711042nt_int @ X4 @ R5 )
        @ ^ [X4: set_Pr958786334691620121nt_int] : ( member2340774599025711042nt_int @ X4 @ S3 ) )
      = ( ord_le483042692224249369nt_int @ R5 @ S3 ) ) ).

% pred_subset_eq
thf(fact_2116_pred__subset__eq,axiom,
    ! [R5: set_set_nat,S3: set_set_nat] :
      ( ( ord_le3964352015994296041_nat_o
        @ ^ [X4: set_nat] : ( member_set_nat @ X4 @ R5 )
        @ ^ [X4: set_nat] : ( member_set_nat @ X4 @ S3 ) )
      = ( ord_le6893508408891458716et_nat @ R5 @ S3 ) ) ).

% pred_subset_eq
thf(fact_2117_pred__subset__eq,axiom,
    ! [R5: set_int,S3: set_int] :
      ( ( ord_less_eq_int_o
        @ ^ [X4: int] : ( member_int @ X4 @ R5 )
        @ ^ [X4: int] : ( member_int @ X4 @ S3 ) )
      = ( ord_less_eq_set_int @ R5 @ S3 ) ) ).

% pred_subset_eq
thf(fact_2118_pred__subset__eq,axiom,
    ! [R5: set_nat,S3: set_nat] :
      ( ( ord_less_eq_nat_o
        @ ^ [X4: nat] : ( member_nat @ X4 @ R5 )
        @ ^ [X4: nat] : ( member_nat @ X4 @ S3 ) )
      = ( ord_less_eq_set_nat @ R5 @ S3 ) ) ).

% pred_subset_eq
thf(fact_2119_conj__subset__def,axiom,
    ! [A3: set_se7855581050983116737at_nat,P: set_Pr1261947904930325089at_nat > $o,Q: set_Pr1261947904930325089at_nat > $o] :
      ( ( ord_le2077887516847798113at_nat @ A3
        @ ( collec5514110066124741708at_nat
          @ ^ [X4: set_Pr1261947904930325089at_nat] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) )
      = ( ( ord_le2077887516847798113at_nat @ A3 @ ( collec5514110066124741708at_nat @ P ) )
        & ( ord_le2077887516847798113at_nat @ A3 @ ( collec5514110066124741708at_nat @ Q ) ) ) ) ).

% conj_subset_def
thf(fact_2120_conj__subset__def,axiom,
    ! [A3: set_se6260736226359567993nt_int,P: set_Pr958786334691620121nt_int > $o,Q: set_Pr958786334691620121nt_int > $o] :
      ( ( ord_le483042692224249369nt_int @ A3
        @ ( collec5210948495886036740nt_int
          @ ^ [X4: set_Pr958786334691620121nt_int] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) )
      = ( ( ord_le483042692224249369nt_int @ A3 @ ( collec5210948495886036740nt_int @ P ) )
        & ( ord_le483042692224249369nt_int @ A3 @ ( collec5210948495886036740nt_int @ Q ) ) ) ) ).

% conj_subset_def
thf(fact_2121_conj__subset__def,axiom,
    ! [A3: set_set_nat,P: set_nat > $o,Q: set_nat > $o] :
      ( ( ord_le6893508408891458716et_nat @ A3
        @ ( collect_set_nat
          @ ^ [X4: set_nat] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) )
      = ( ( ord_le6893508408891458716et_nat @ A3 @ ( collect_set_nat @ P ) )
        & ( ord_le6893508408891458716et_nat @ A3 @ ( collect_set_nat @ Q ) ) ) ) ).

% conj_subset_def
thf(fact_2122_conj__subset__def,axiom,
    ! [A3: set_int,P: int > $o,Q: int > $o] :
      ( ( ord_less_eq_set_int @ A3
        @ ( collect_int
          @ ^ [X4: int] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) )
      = ( ( ord_less_eq_set_int @ A3 @ ( collect_int @ P ) )
        & ( ord_less_eq_set_int @ A3 @ ( collect_int @ Q ) ) ) ) ).

% conj_subset_def
thf(fact_2123_conj__subset__def,axiom,
    ! [A3: set_nat,P: nat > $o,Q: nat > $o] :
      ( ( ord_less_eq_set_nat @ A3
        @ ( collect_nat
          @ ^ [X4: nat] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) )
      = ( ( ord_less_eq_set_nat @ A3 @ ( collect_nat @ P ) )
        & ( ord_less_eq_set_nat @ A3 @ ( collect_nat @ Q ) ) ) ) ).

% conj_subset_def
thf(fact_2124_prop__restrict,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Z5: set_se7855581050983116737at_nat,X8: set_se7855581050983116737at_nat,P: set_Pr1261947904930325089at_nat > $o] :
      ( ( member2643936169264416010at_nat @ X @ Z5 )
     => ( ( ord_le2077887516847798113at_nat @ Z5
          @ ( collec5514110066124741708at_nat
            @ ^ [X4: set_Pr1261947904930325089at_nat] :
                ( ( member2643936169264416010at_nat @ X4 @ X8 )
                & ( P @ X4 ) ) ) )
       => ( P @ X ) ) ) ).

% prop_restrict
thf(fact_2125_prop__restrict,axiom,
    ! [X: set_Pr958786334691620121nt_int,Z5: set_se6260736226359567993nt_int,X8: set_se6260736226359567993nt_int,P: set_Pr958786334691620121nt_int > $o] :
      ( ( member2340774599025711042nt_int @ X @ Z5 )
     => ( ( ord_le483042692224249369nt_int @ Z5
          @ ( collec5210948495886036740nt_int
            @ ^ [X4: set_Pr958786334691620121nt_int] :
                ( ( member2340774599025711042nt_int @ X4 @ X8 )
                & ( P @ X4 ) ) ) )
       => ( P @ X ) ) ) ).

% prop_restrict
thf(fact_2126_prop__restrict,axiom,
    ! [X: set_nat,Z5: set_set_nat,X8: set_set_nat,P: set_nat > $o] :
      ( ( member_set_nat @ X @ Z5 )
     => ( ( ord_le6893508408891458716et_nat @ Z5
          @ ( collect_set_nat
            @ ^ [X4: set_nat] :
                ( ( member_set_nat @ X4 @ X8 )
                & ( P @ X4 ) ) ) )
       => ( P @ X ) ) ) ).

% prop_restrict
thf(fact_2127_prop__restrict,axiom,
    ! [X: int,Z5: set_int,X8: set_int,P: int > $o] :
      ( ( member_int @ X @ Z5 )
     => ( ( ord_less_eq_set_int @ Z5
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ X8 )
                & ( P @ X4 ) ) ) )
       => ( P @ X ) ) ) ).

% prop_restrict
thf(fact_2128_prop__restrict,axiom,
    ! [X: nat,Z5: set_nat,X8: set_nat,P: nat > $o] :
      ( ( member_nat @ X @ Z5 )
     => ( ( ord_less_eq_set_nat @ Z5
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ X8 )
                & ( P @ X4 ) ) ) )
       => ( P @ X ) ) ) ).

% prop_restrict
thf(fact_2129_Collect__restrict,axiom,
    ! [X8: set_se7855581050983116737at_nat,P: set_Pr1261947904930325089at_nat > $o] :
      ( ord_le2077887516847798113at_nat
      @ ( collec5514110066124741708at_nat
        @ ^ [X4: set_Pr1261947904930325089at_nat] :
            ( ( member2643936169264416010at_nat @ X4 @ X8 )
            & ( P @ X4 ) ) )
      @ X8 ) ).

% Collect_restrict
thf(fact_2130_Collect__restrict,axiom,
    ! [X8: set_se6260736226359567993nt_int,P: set_Pr958786334691620121nt_int > $o] :
      ( ord_le483042692224249369nt_int
      @ ( collec5210948495886036740nt_int
        @ ^ [X4: set_Pr958786334691620121nt_int] :
            ( ( member2340774599025711042nt_int @ X4 @ X8 )
            & ( P @ X4 ) ) )
      @ X8 ) ).

% Collect_restrict
thf(fact_2131_Collect__restrict,axiom,
    ! [X8: set_set_nat,P: set_nat > $o] :
      ( ord_le6893508408891458716et_nat
      @ ( collect_set_nat
        @ ^ [X4: set_nat] :
            ( ( member_set_nat @ X4 @ X8 )
            & ( P @ X4 ) ) )
      @ X8 ) ).

% Collect_restrict
thf(fact_2132_Collect__restrict,axiom,
    ! [X8: set_int,P: int > $o] :
      ( ord_less_eq_set_int
      @ ( collect_int
        @ ^ [X4: int] :
            ( ( member_int @ X4 @ X8 )
            & ( P @ X4 ) ) )
      @ X8 ) ).

% Collect_restrict
thf(fact_2133_Collect__restrict,axiom,
    ! [X8: set_nat,P: nat > $o] :
      ( ord_less_eq_set_nat
      @ ( collect_nat
        @ ^ [X4: nat] :
            ( ( member_nat @ X4 @ X8 )
            & ( P @ X4 ) ) )
      @ X8 ) ).

% Collect_restrict
thf(fact_2134_mult_Oleft__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( times_times_nat @ B @ ( times_times_nat @ A @ C ) )
      = ( times_times_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

% mult.left_commute
thf(fact_2135_mult_Oleft__commute,axiom,
    ! [B: int,A: int,C: int] :
      ( ( times_times_int @ B @ ( times_times_int @ A @ C ) )
      = ( times_times_int @ A @ ( times_times_int @ B @ C ) ) ) ).

% mult.left_commute
thf(fact_2136_mult_Oleft__commute,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ B @ ( times_3573771949741848930nteger @ A @ C ) )
      = ( times_3573771949741848930nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% mult.left_commute
thf(fact_2137_mult_Oleft__commute,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( times_times_rat @ B @ ( times_times_rat @ A @ C ) )
      = ( times_times_rat @ A @ ( times_times_rat @ B @ C ) ) ) ).

% mult.left_commute
thf(fact_2138_mult_Ocommute,axiom,
    ( times_times_nat
    = ( ^ [A4: nat,B4: nat] : ( times_times_nat @ B4 @ A4 ) ) ) ).

% mult.commute
thf(fact_2139_mult_Ocommute,axiom,
    ( times_times_int
    = ( ^ [A4: int,B4: int] : ( times_times_int @ B4 @ A4 ) ) ) ).

% mult.commute
thf(fact_2140_mult_Ocommute,axiom,
    ( times_3573771949741848930nteger
    = ( ^ [A4: code_integer,B4: code_integer] : ( times_3573771949741848930nteger @ B4 @ A4 ) ) ) ).

% mult.commute
thf(fact_2141_mult_Ocommute,axiom,
    ( times_times_rat
    = ( ^ [A4: rat,B4: rat] : ( times_times_rat @ B4 @ A4 ) ) ) ).

% mult.commute
thf(fact_2142_mult_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( times_times_nat @ A @ B ) @ C )
      = ( times_times_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

% mult.assoc
thf(fact_2143_mult_Oassoc,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( times_times_int @ A @ B ) @ C )
      = ( times_times_int @ A @ ( times_times_int @ B @ C ) ) ) ).

% mult.assoc
thf(fact_2144_mult_Oassoc,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( times_3573771949741848930nteger @ A @ B ) @ C )
      = ( times_3573771949741848930nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% mult.assoc
thf(fact_2145_mult_Oassoc,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ ( times_times_rat @ A @ B ) @ C )
      = ( times_times_rat @ A @ ( times_times_rat @ B @ C ) ) ) ).

% mult.assoc
thf(fact_2146_mult__of__int__commute,axiom,
    ! [X: int,Y3: int] :
      ( ( times_times_int @ ( ring_1_of_int_int @ X ) @ Y3 )
      = ( times_times_int @ Y3 @ ( ring_1_of_int_int @ X ) ) ) ).

% mult_of_int_commute
thf(fact_2147_mult__of__int__commute,axiom,
    ! [X: int,Y3: code_integer] :
      ( ( times_3573771949741848930nteger @ ( ring_18347121197199848620nteger @ X ) @ Y3 )
      = ( times_3573771949741848930nteger @ Y3 @ ( ring_18347121197199848620nteger @ X ) ) ) ).

% mult_of_int_commute
thf(fact_2148_mult__of__int__commute,axiom,
    ! [X: int,Y3: rat] :
      ( ( times_times_rat @ ( ring_1_of_int_rat @ X ) @ Y3 )
      = ( times_times_rat @ Y3 @ ( ring_1_of_int_rat @ X ) ) ) ).

% mult_of_int_commute
thf(fact_2149_Nats__mult,axiom,
    ! [A: nat,B: nat] :
      ( ( member_nat @ A @ semiring_1_Nats_nat )
     => ( ( member_nat @ B @ semiring_1_Nats_nat )
       => ( member_nat @ ( times_times_nat @ A @ B ) @ semiring_1_Nats_nat ) ) ) ).

% Nats_mult
thf(fact_2150_Nats__mult,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( member_Code_integer @ A @ semiri2551628265256775642nteger )
     => ( ( member_Code_integer @ B @ semiri2551628265256775642nteger )
       => ( member_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) @ semiri2551628265256775642nteger ) ) ) ).

% Nats_mult
thf(fact_2151_Nats__mult,axiom,
    ! [A: rat,B: rat] :
      ( ( member_rat @ A @ semiring_1_Nats_rat )
     => ( ( member_rat @ B @ semiring_1_Nats_rat )
       => ( member_rat @ ( times_times_rat @ A @ B ) @ semiring_1_Nats_rat ) ) ) ).

% Nats_mult
thf(fact_2152_Nats__mult,axiom,
    ! [A: int,B: int] :
      ( ( member_int @ A @ semiring_1_Nats_int )
     => ( ( member_int @ B @ semiring_1_Nats_int )
       => ( member_int @ ( times_times_int @ A @ B ) @ semiring_1_Nats_int ) ) ) ).

% Nats_mult
thf(fact_2153_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( times_times_nat @ A @ B ) @ C )
      = ( times_times_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_2154_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( times_times_int @ A @ B ) @ C )
      = ( times_times_int @ A @ ( times_times_int @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_2155_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( times_3573771949741848930nteger @ A @ B ) @ C )
      = ( times_3573771949741848930nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_2156_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ ( times_times_rat @ A @ B ) @ C )
      = ( times_times_rat @ A @ ( times_times_rat @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_2157_nat__abs__mult__distrib,axiom,
    ! [W: int,Z: int] :
      ( ( nat2 @ ( abs_abs_int @ ( times_times_int @ W @ Z ) ) )
      = ( times_times_nat @ ( nat2 @ ( abs_abs_int @ W ) ) @ ( nat2 @ ( abs_abs_int @ Z ) ) ) ) ).

% nat_abs_mult_distrib
thf(fact_2158_int__ops_I7_J,axiom,
    ! [A: nat,B: nat] :
      ( ( semiri1314217659103216013at_int @ ( times_times_nat @ A @ B ) )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% int_ops(7)
thf(fact_2159_nat__mult__distrib__neg,axiom,
    ! [Z: int,Z4: int] :
      ( ( ord_less_eq_int @ Z @ zero_zero_int )
     => ( ( nat2 @ ( times_times_int @ Z @ Z4 ) )
        = ( times_times_nat @ ( nat2 @ ( uminus_uminus_int @ Z ) ) @ ( nat2 @ ( uminus_uminus_int @ Z4 ) ) ) ) ) ).

% nat_mult_distrib_neg
thf(fact_2160_ex__nat,axiom,
    ( ( ^ [P2: nat > $o] :
        ? [X3: nat] : ( P2 @ X3 ) )
    = ( ^ [P3: nat > $o] :
        ? [X4: int] :
          ( ( ord_less_eq_int @ zero_zero_int @ X4 )
          & ( P3 @ ( nat2 @ X4 ) ) ) ) ) ).

% ex_nat
thf(fact_2161_all__nat,axiom,
    ( ( ^ [P2: nat > $o] :
        ! [X3: nat] : ( P2 @ X3 ) )
    = ( ^ [P3: nat > $o] :
        ! [X4: int] :
          ( ( ord_less_eq_int @ zero_zero_int @ X4 )
         => ( P3 @ ( nat2 @ X4 ) ) ) ) ) ).

% all_nat
thf(fact_2162_nat__power__eq,axiom,
    ! [Z: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( nat2 @ ( power_power_int @ Z @ N ) )
        = ( power_power_nat @ ( nat2 @ Z ) @ N ) ) ) ).

% nat_power_eq
thf(fact_2163_eq__nat__nat__iff,axiom,
    ! [Z: int,Z4: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( ord_less_eq_int @ zero_zero_int @ Z4 )
       => ( ( ( nat2 @ Z )
            = ( nat2 @ Z4 ) )
          = ( Z = Z4 ) ) ) ) ).

% eq_nat_nat_iff
thf(fact_2164_nat__diff__distrib,axiom,
    ! [Z4: int,Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z4 )
     => ( ( ord_less_eq_int @ Z4 @ Z )
       => ( ( nat2 @ ( minus_minus_int @ Z @ Z4 ) )
          = ( minus_minus_nat @ ( nat2 @ Z ) @ ( nat2 @ Z4 ) ) ) ) ) ).

% nat_diff_distrib
thf(fact_2165_nat__diff__distrib_H,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
       => ( ( nat2 @ ( minus_minus_int @ X @ Y3 ) )
          = ( minus_minus_nat @ ( nat2 @ X ) @ ( nat2 @ Y3 ) ) ) ) ) ).

% nat_diff_distrib'
thf(fact_2166_nat__le__iff,axiom,
    ! [X: int,N: nat] :
      ( ( ord_less_eq_nat @ ( nat2 @ X ) @ N )
      = ( ord_less_eq_int @ X @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% nat_le_iff
thf(fact_2167_nat__abs__int__diff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_eq_nat @ A @ B )
       => ( ( nat2 @ ( abs_abs_int @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) )
          = ( minus_minus_nat @ B @ A ) ) )
      & ( ~ ( ord_less_eq_nat @ A @ B )
       => ( ( nat2 @ ( abs_abs_int @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) )
          = ( minus_minus_nat @ A @ B ) ) ) ) ).

% nat_abs_int_diff
thf(fact_2168_int__minus,axiom,
    ! [N: nat,M: nat] :
      ( ( semiri1314217659103216013at_int @ ( minus_minus_nat @ N @ M ) )
      = ( semiri1314217659103216013at_int @ ( nat2 @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ N ) @ ( semiri1314217659103216013at_int @ M ) ) ) ) ) ).

% int_minus
thf(fact_2169_mult__not__zero,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( times_2397367101498566445atural @ A @ B )
       != zero_z2226904508553997617atural )
     => ( ( A != zero_z2226904508553997617atural )
        & ( B != zero_z2226904508553997617atural ) ) ) ).

% mult_not_zero
thf(fact_2170_mult__not__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( ( times_times_nat @ A @ B )
       != zero_zero_nat )
     => ( ( A != zero_zero_nat )
        & ( B != zero_zero_nat ) ) ) ).

% mult_not_zero
thf(fact_2171_mult__not__zero,axiom,
    ! [A: int,B: int] :
      ( ( ( times_times_int @ A @ B )
       != zero_zero_int )
     => ( ( A != zero_zero_int )
        & ( B != zero_zero_int ) ) ) ).

% mult_not_zero
thf(fact_2172_mult__not__zero,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ B )
       != zero_z3403309356797280102nteger )
     => ( ( A != zero_z3403309356797280102nteger )
        & ( B != zero_z3403309356797280102nteger ) ) ) ).

% mult_not_zero
thf(fact_2173_mult__not__zero,axiom,
    ! [A: rat,B: rat] :
      ( ( ( times_times_rat @ A @ B )
       != zero_zero_rat )
     => ( ( A != zero_zero_rat )
        & ( B != zero_zero_rat ) ) ) ).

% mult_not_zero
thf(fact_2174_divisors__zero,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( times_2397367101498566445atural @ A @ B )
        = zero_z2226904508553997617atural )
     => ( ( A = zero_z2226904508553997617atural )
        | ( B = zero_z2226904508553997617atural ) ) ) ).

% divisors_zero
thf(fact_2175_divisors__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( ( times_times_nat @ A @ B )
        = zero_zero_nat )
     => ( ( A = zero_zero_nat )
        | ( B = zero_zero_nat ) ) ) ).

% divisors_zero
thf(fact_2176_divisors__zero,axiom,
    ! [A: int,B: int] :
      ( ( ( times_times_int @ A @ B )
        = zero_zero_int )
     => ( ( A = zero_zero_int )
        | ( B = zero_zero_int ) ) ) ).

% divisors_zero
thf(fact_2177_divisors__zero,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ B )
        = zero_z3403309356797280102nteger )
     => ( ( A = zero_z3403309356797280102nteger )
        | ( B = zero_z3403309356797280102nteger ) ) ) ).

% divisors_zero
thf(fact_2178_divisors__zero,axiom,
    ! [A: rat,B: rat] :
      ( ( ( times_times_rat @ A @ B )
        = zero_zero_rat )
     => ( ( A = zero_zero_rat )
        | ( B = zero_zero_rat ) ) ) ).

% divisors_zero
thf(fact_2179_no__zero__divisors,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( B != zero_z2226904508553997617atural )
       => ( ( times_2397367101498566445atural @ A @ B )
         != zero_z2226904508553997617atural ) ) ) ).

% no_zero_divisors
thf(fact_2180_no__zero__divisors,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ( ( B != zero_zero_nat )
       => ( ( times_times_nat @ A @ B )
         != zero_zero_nat ) ) ) ).

% no_zero_divisors
thf(fact_2181_no__zero__divisors,axiom,
    ! [A: int,B: int] :
      ( ( A != zero_zero_int )
     => ( ( B != zero_zero_int )
       => ( ( times_times_int @ A @ B )
         != zero_zero_int ) ) ) ).

% no_zero_divisors
thf(fact_2182_no__zero__divisors,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( B != zero_z3403309356797280102nteger )
       => ( ( times_3573771949741848930nteger @ A @ B )
         != zero_z3403309356797280102nteger ) ) ) ).

% no_zero_divisors
thf(fact_2183_no__zero__divisors,axiom,
    ! [A: rat,B: rat] :
      ( ( A != zero_zero_rat )
     => ( ( B != zero_zero_rat )
       => ( ( times_times_rat @ A @ B )
         != zero_zero_rat ) ) ) ).

% no_zero_divisors
thf(fact_2184_mult__left__cancel,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( C != zero_z2226904508553997617atural )
     => ( ( ( times_2397367101498566445atural @ C @ A )
          = ( times_2397367101498566445atural @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_2185_mult__left__cancel,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( C != zero_zero_nat )
     => ( ( ( times_times_nat @ C @ A )
          = ( times_times_nat @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_2186_mult__left__cancel,axiom,
    ! [C: int,A: int,B: int] :
      ( ( C != zero_zero_int )
     => ( ( ( times_times_int @ C @ A )
          = ( times_times_int @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_2187_mult__left__cancel,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( C != zero_z3403309356797280102nteger )
     => ( ( ( times_3573771949741848930nteger @ C @ A )
          = ( times_3573771949741848930nteger @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_2188_mult__left__cancel,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( ( times_times_rat @ C @ A )
          = ( times_times_rat @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_2189_mult__right__cancel,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( C != zero_z2226904508553997617atural )
     => ( ( ( times_2397367101498566445atural @ A @ C )
          = ( times_2397367101498566445atural @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_2190_mult__right__cancel,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( C != zero_zero_nat )
     => ( ( ( times_times_nat @ A @ C )
          = ( times_times_nat @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_2191_mult__right__cancel,axiom,
    ! [C: int,A: int,B: int] :
      ( ( C != zero_zero_int )
     => ( ( ( times_times_int @ A @ C )
          = ( times_times_int @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_2192_mult__right__cancel,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( C != zero_z3403309356797280102nteger )
     => ( ( ( times_3573771949741848930nteger @ A @ C )
          = ( times_3573771949741848930nteger @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_2193_mult__right__cancel,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( ( times_times_rat @ A @ C )
          = ( times_times_rat @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_2194_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_2195_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_2196_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_2197_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_2198_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_2199_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ A @ ( plus_plus_rat @ B @ C ) )
      = ( plus_plus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_2200_comm__semiring__class_Odistrib,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_2201_comm__semiring__class_Odistrib,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_2202_comm__semiring__class_Odistrib,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_2203_comm__semiring__class_Odistrib,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_2204_distrib__left,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ A @ ( plus_plus_nat @ B @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ).

% distrib_left
thf(fact_2205_distrib__left,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ).

% distrib_left
thf(fact_2206_distrib__left,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ).

% distrib_left
thf(fact_2207_distrib__left,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ A @ ( plus_plus_rat @ B @ C ) )
      = ( plus_plus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ).

% distrib_left
thf(fact_2208_distrib__right,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ).

% distrib_right
thf(fact_2209_distrib__right,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% distrib_right
thf(fact_2210_distrib__right,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% distrib_right
thf(fact_2211_distrib__right,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ).

% distrib_right
thf(fact_2212_combine__common__factor,axiom,
    ! [A: nat,E: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ A @ E ) @ ( plus_plus_nat @ ( times_times_nat @ B @ E ) @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_2213_combine__common__factor,axiom,
    ! [A: int,E: int,B: int,C: int] :
      ( ( plus_plus_int @ ( times_times_int @ A @ E ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ C ) )
      = ( plus_plus_int @ ( times_times_int @ ( plus_plus_int @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_2214_combine__common__factor,axiom,
    ! [A: code_integer,E: code_integer,B: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ C ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_2215_combine__common__factor,axiom,
    ! [A: rat,E: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ C ) )
      = ( plus_plus_rat @ ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_2216_crossproduct__eq,axiom,
    ! [W: nat,Y3: nat,X: nat,Z: nat] :
      ( ( ( plus_plus_nat @ ( times_times_nat @ W @ Y3 ) @ ( times_times_nat @ X @ Z ) )
        = ( plus_plus_nat @ ( times_times_nat @ W @ Z ) @ ( times_times_nat @ X @ Y3 ) ) )
      = ( ( W = X )
        | ( Y3 = Z ) ) ) ).

% crossproduct_eq
thf(fact_2217_crossproduct__eq,axiom,
    ! [W: int,Y3: int,X: int,Z: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ W @ Y3 ) @ ( times_times_int @ X @ Z ) )
        = ( plus_plus_int @ ( times_times_int @ W @ Z ) @ ( times_times_int @ X @ Y3 ) ) )
      = ( ( W = X )
        | ( Y3 = Z ) ) ) ).

% crossproduct_eq
thf(fact_2218_crossproduct__eq,axiom,
    ! [W: code_integer,Y3: code_integer,X: code_integer,Z: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ W @ Y3 ) @ ( times_3573771949741848930nteger @ X @ Z ) )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ W @ Z ) @ ( times_3573771949741848930nteger @ X @ Y3 ) ) )
      = ( ( W = X )
        | ( Y3 = Z ) ) ) ).

% crossproduct_eq
thf(fact_2219_crossproduct__eq,axiom,
    ! [W: rat,Y3: rat,X: rat,Z: rat] :
      ( ( ( plus_plus_rat @ ( times_times_rat @ W @ Y3 ) @ ( times_times_rat @ X @ Z ) )
        = ( plus_plus_rat @ ( times_times_rat @ W @ Z ) @ ( times_times_rat @ X @ Y3 ) ) )
      = ( ( W = X )
        | ( Y3 = Z ) ) ) ).

% crossproduct_eq
thf(fact_2220_crossproduct__noteq,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ( A != B )
        & ( C != D ) )
      = ( ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) )
       != ( plus_plus_nat @ ( times_times_nat @ A @ D ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% crossproduct_noteq
thf(fact_2221_crossproduct__noteq,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( A != B )
        & ( C != D ) )
      = ( ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) )
       != ( plus_plus_int @ ( times_times_int @ A @ D ) @ ( times_times_int @ B @ C ) ) ) ) ).

% crossproduct_noteq
thf(fact_2222_crossproduct__noteq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ( A != B )
        & ( C != D ) )
      = ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) )
       != ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ D ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% crossproduct_noteq
thf(fact_2223_crossproduct__noteq,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ( A != B )
        & ( C != D ) )
      = ( ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) )
       != ( plus_plus_rat @ ( times_times_rat @ A @ D ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% crossproduct_noteq
thf(fact_2224_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ one_one_Code_natural @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_2225_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ one_one_nat @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_2226_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: int] :
      ( ( times_times_int @ one_one_int @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_2227_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ one_one_Code_integer @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_2228_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ one_one_rat @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_2229_mult_Ocomm__neutral,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ A @ one_one_Code_natural )
      = A ) ).

% mult.comm_neutral
thf(fact_2230_mult_Ocomm__neutral,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ A @ one_one_nat )
      = A ) ).

% mult.comm_neutral
thf(fact_2231_mult_Ocomm__neutral,axiom,
    ! [A: int] :
      ( ( times_times_int @ A @ one_one_int )
      = A ) ).

% mult.comm_neutral
thf(fact_2232_mult_Ocomm__neutral,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ one_one_Code_integer )
      = A ) ).

% mult.comm_neutral
thf(fact_2233_mult_Ocomm__neutral,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ A @ one_one_rat )
      = A ) ).

% mult.comm_neutral
thf(fact_2234_right__diff__distrib_H,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ A @ ( minus_minus_nat @ B @ C ) )
      = ( minus_minus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ).

% right_diff_distrib'
thf(fact_2235_right__diff__distrib_H,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ).

% right_diff_distrib'
thf(fact_2236_right__diff__distrib_H,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ ( minus_8373710615458151222nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ).

% right_diff_distrib'
thf(fact_2237_right__diff__distrib_H,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ A @ ( minus_minus_rat @ B @ C ) )
      = ( minus_minus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ).

% right_diff_distrib'
thf(fact_2238_left__diff__distrib_H,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ B @ C ) @ A )
      = ( minus_minus_nat @ ( times_times_nat @ B @ A ) @ ( times_times_nat @ C @ A ) ) ) ).

% left_diff_distrib'
thf(fact_2239_left__diff__distrib_H,axiom,
    ! [B: int,C: int,A: int] :
      ( ( times_times_int @ ( minus_minus_int @ B @ C ) @ A )
      = ( minus_minus_int @ ( times_times_int @ B @ A ) @ ( times_times_int @ C @ A ) ) ) ).

% left_diff_distrib'
thf(fact_2240_left__diff__distrib_H,axiom,
    ! [B: code_integer,C: code_integer,A: code_integer] :
      ( ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ B @ C ) @ A )
      = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ B @ A ) @ ( times_3573771949741848930nteger @ C @ A ) ) ) ).

% left_diff_distrib'
thf(fact_2241_left__diff__distrib_H,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( times_times_rat @ ( minus_minus_rat @ B @ C ) @ A )
      = ( minus_minus_rat @ ( times_times_rat @ B @ A ) @ ( times_times_rat @ C @ A ) ) ) ).

% left_diff_distrib'
thf(fact_2242_right__diff__distrib,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ).

% right_diff_distrib
thf(fact_2243_right__diff__distrib,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ ( minus_8373710615458151222nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ).

% right_diff_distrib
thf(fact_2244_right__diff__distrib,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ A @ ( minus_minus_rat @ B @ C ) )
      = ( minus_minus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ).

% right_diff_distrib
thf(fact_2245_left__diff__distrib,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% left_diff_distrib
thf(fact_2246_left__diff__distrib,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
      = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% left_diff_distrib
thf(fact_2247_left__diff__distrib,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ C )
      = ( minus_minus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ).

% left_diff_distrib
thf(fact_2248_minus__mult__commute,axiom,
    ! [A: int,B: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ A ) @ B )
      = ( times_times_int @ A @ ( uminus_uminus_int @ B ) ) ) ).

% minus_mult_commute
thf(fact_2249_minus__mult__commute,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( times_3573771949741848930nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
      = ( times_3573771949741848930nteger @ A @ ( uminus1351360451143612070nteger @ B ) ) ) ).

% minus_mult_commute
thf(fact_2250_minus__mult__commute,axiom,
    ! [A: rat,B: rat] :
      ( ( times_times_rat @ ( uminus_uminus_rat @ A ) @ B )
      = ( times_times_rat @ A @ ( uminus_uminus_rat @ B ) ) ) ).

% minus_mult_commute
thf(fact_2251_square__eq__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( times_times_int @ A @ A )
        = ( times_times_int @ B @ B ) )
      = ( ( A = B )
        | ( A
          = ( uminus_uminus_int @ B ) ) ) ) ).

% square_eq_iff
thf(fact_2252_square__eq__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ A )
        = ( times_3573771949741848930nteger @ B @ B ) )
      = ( ( A = B )
        | ( A
          = ( uminus1351360451143612070nteger @ B ) ) ) ) ).

% square_eq_iff
thf(fact_2253_square__eq__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( times_times_rat @ A @ A )
        = ( times_times_rat @ B @ B ) )
      = ( ( A = B )
        | ( A
          = ( uminus_uminus_rat @ B ) ) ) ) ).

% square_eq_iff
thf(fact_2254_mult__0,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% mult_0
thf(fact_2255_mult__of__nat__commute,axiom,
    ! [X: nat,Y3: code_integer] :
      ( ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ X ) @ Y3 )
      = ( times_3573771949741848930nteger @ Y3 @ ( semiri4939895301339042750nteger @ X ) ) ) ).

% mult_of_nat_commute
thf(fact_2256_mult__of__nat__commute,axiom,
    ! [X: nat,Y3: rat] :
      ( ( times_times_rat @ ( semiri681578069525770553at_rat @ X ) @ Y3 )
      = ( times_times_rat @ Y3 @ ( semiri681578069525770553at_rat @ X ) ) ) ).

% mult_of_nat_commute
thf(fact_2257_mult__of__nat__commute,axiom,
    ! [X: nat,Y3: int] :
      ( ( times_times_int @ ( semiri1314217659103216013at_int @ X ) @ Y3 )
      = ( times_times_int @ Y3 @ ( semiri1314217659103216013at_int @ X ) ) ) ).

% mult_of_nat_commute
thf(fact_2258_mult__of__nat__commute,axiom,
    ! [X: nat,Y3: nat] :
      ( ( times_times_nat @ ( semiri1316708129612266289at_nat @ X ) @ Y3 )
      = ( times_times_nat @ Y3 @ ( semiri1316708129612266289at_nat @ X ) ) ) ).

% mult_of_nat_commute
thf(fact_2259_times__int__code_I2_J,axiom,
    ! [L: int] :
      ( ( times_times_int @ zero_zero_int @ L )
      = zero_zero_int ) ).

% times_int_code(2)
thf(fact_2260_times__int__code_I1_J,axiom,
    ! [K: int] :
      ( ( times_times_int @ K @ zero_zero_int )
      = zero_zero_int ) ).

% times_int_code(1)
thf(fact_2261_add__mult__distrib,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ M @ N ) @ K )
      = ( plus_plus_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) ) ) ).

% add_mult_distrib
thf(fact_2262_add__mult__distrib2,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% add_mult_distrib2
thf(fact_2263_abs__mult,axiom,
    ! [A: int,B: int] :
      ( ( abs_abs_int @ ( times_times_int @ A @ B ) )
      = ( times_times_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) ).

% abs_mult
thf(fact_2264_abs__mult,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( abs_abs_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) )
      = ( times_3573771949741848930nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) ).

% abs_mult
thf(fact_2265_abs__mult,axiom,
    ! [A: rat,B: rat] :
      ( ( abs_abs_rat @ ( times_times_rat @ A @ B ) )
      = ( times_times_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ).

% abs_mult
thf(fact_2266_abs__zmult__eq__1,axiom,
    ! [M: int,N: int] :
      ( ( ( abs_abs_int @ ( times_times_int @ M @ N ) )
        = one_one_int )
     => ( ( abs_abs_int @ M )
        = one_one_int ) ) ).

% abs_zmult_eq_1
thf(fact_2267_Ints__of__int,axiom,
    ! [Z: int] : ( member_rat @ ( ring_1_of_int_rat @ Z ) @ ring_1_Ints_rat ) ).

% Ints_of_int
thf(fact_2268_Ints__of__int,axiom,
    ! [Z: int] : ( member_int @ ( ring_1_of_int_int @ Z ) @ ring_1_Ints_int ) ).

% Ints_of_int
thf(fact_2269_Ints__induct,axiom,
    ! [Q2: rat,P: rat > $o] :
      ( ( member_rat @ Q2 @ ring_1_Ints_rat )
     => ( ! [Z6: int] : ( P @ ( ring_1_of_int_rat @ Z6 ) )
       => ( P @ Q2 ) ) ) ).

% Ints_induct
thf(fact_2270_Ints__induct,axiom,
    ! [Q2: int,P: int > $o] :
      ( ( member_int @ Q2 @ ring_1_Ints_int )
     => ( ! [Z6: int] : ( P @ ( ring_1_of_int_int @ Z6 ) )
       => ( P @ Q2 ) ) ) ).

% Ints_induct
thf(fact_2271_Ints__cases,axiom,
    ! [Q2: rat] :
      ( ( member_rat @ Q2 @ ring_1_Ints_rat )
     => ~ ! [Z6: int] :
            ( Q2
           != ( ring_1_of_int_rat @ Z6 ) ) ) ).

% Ints_cases
thf(fact_2272_Ints__cases,axiom,
    ! [Q2: int] :
      ( ( member_int @ Q2 @ ring_1_Ints_int )
     => ~ ! [Z6: int] :
            ( Q2
           != ( ring_1_of_int_int @ Z6 ) ) ) ).

% Ints_cases
thf(fact_2273_int__distrib_I2_J,axiom,
    ! [W: int,Z1: int,Z22: int] :
      ( ( times_times_int @ W @ ( plus_plus_int @ Z1 @ Z22 ) )
      = ( plus_plus_int @ ( times_times_int @ W @ Z1 ) @ ( times_times_int @ W @ Z22 ) ) ) ).

% int_distrib(2)
thf(fact_2274_int__distrib_I1_J,axiom,
    ! [Z1: int,Z22: int,W: int] :
      ( ( times_times_int @ ( plus_plus_int @ Z1 @ Z22 ) @ W )
      = ( plus_plus_int @ ( times_times_int @ Z1 @ W ) @ ( times_times_int @ Z22 @ W ) ) ) ).

% int_distrib(1)
thf(fact_2275_int__sgnE,axiom,
    ! [K: int] :
      ~ ! [N2: nat,L3: int] :
          ( K
         != ( times_times_int @ ( sgn_sgn_int @ L3 ) @ ( semiri1314217659103216013at_int @ N2 ) ) ) ).

% int_sgnE
thf(fact_2276_nat__mult__1,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ one_one_nat @ N )
      = N ) ).

% nat_mult_1
thf(fact_2277_nat__mult__1__right,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ N @ one_one_nat )
      = N ) ).

% nat_mult_1_right
thf(fact_2278_sgn__mult,axiom,
    ! [A: int,B: int] :
      ( ( sgn_sgn_int @ ( times_times_int @ A @ B ) )
      = ( times_times_int @ ( sgn_sgn_int @ A ) @ ( sgn_sgn_int @ B ) ) ) ).

% sgn_mult
thf(fact_2279_sgn__mult,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( sgn_sgn_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) )
      = ( times_3573771949741848930nteger @ ( sgn_sgn_Code_integer @ A ) @ ( sgn_sgn_Code_integer @ B ) ) ) ).

% sgn_mult
thf(fact_2280_sgn__mult,axiom,
    ! [A: rat,B: rat] :
      ( ( sgn_sgn_rat @ ( times_times_rat @ A @ B ) )
      = ( times_times_rat @ ( sgn_sgn_rat @ A ) @ ( sgn_sgn_rat @ B ) ) ) ).

% sgn_mult
thf(fact_2281_of__bool__conj,axiom,
    ! [P: $o,Q: $o] :
      ( ( zero_n356916108424825756nteger
        @ ( P
          & Q ) )
      = ( times_3573771949741848930nteger @ ( zero_n356916108424825756nteger @ P ) @ ( zero_n356916108424825756nteger @ Q ) ) ) ).

% of_bool_conj
thf(fact_2282_of__bool__conj,axiom,
    ! [P: $o,Q: $o] :
      ( ( zero_n2052037380579107095ol_rat
        @ ( P
          & Q ) )
      = ( times_times_rat @ ( zero_n2052037380579107095ol_rat @ P ) @ ( zero_n2052037380579107095ol_rat @ Q ) ) ) ).

% of_bool_conj
thf(fact_2283_of__bool__conj,axiom,
    ! [P: $o,Q: $o] :
      ( ( zero_n2684676970156552555ol_int
        @ ( P
          & Q ) )
      = ( times_times_int @ ( zero_n2684676970156552555ol_int @ P ) @ ( zero_n2684676970156552555ol_int @ Q ) ) ) ).

% of_bool_conj
thf(fact_2284_of__bool__conj,axiom,
    ! [P: $o,Q: $o] :
      ( ( zero_n2687167440665602831ol_nat
        @ ( P
          & Q ) )
      = ( times_times_nat @ ( zero_n2687167440665602831ol_nat @ P ) @ ( zero_n2687167440665602831ol_nat @ Q ) ) ) ).

% of_bool_conj
thf(fact_2285_Ints__mult,axiom,
    ! [A: int,B: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( member_int @ B @ ring_1_Ints_int )
       => ( member_int @ ( times_times_int @ A @ B ) @ ring_1_Ints_int ) ) ) ).

% Ints_mult
thf(fact_2286_Ints__mult,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( member_Code_integer @ B @ ring_11222124179247155820nteger )
       => ( member_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) @ ring_11222124179247155820nteger ) ) ) ).

% Ints_mult
thf(fact_2287_Ints__mult,axiom,
    ! [A: rat,B: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( member_rat @ B @ ring_1_Ints_rat )
       => ( member_rat @ ( times_times_rat @ A @ B ) @ ring_1_Ints_rat ) ) ) ).

% Ints_mult
thf(fact_2288_nat__minus__as__int,axiom,
    ( minus_minus_nat
    = ( ^ [A4: nat,B4: nat] : ( nat2 @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ) ).

% nat_minus_as_int
thf(fact_2289_lambda__zero,axiom,
    ( ( ^ [H4: code_natural] : zero_z2226904508553997617atural )
    = ( times_2397367101498566445atural @ zero_z2226904508553997617atural ) ) ).

% lambda_zero
thf(fact_2290_lambda__zero,axiom,
    ( ( ^ [H4: nat] : zero_zero_nat )
    = ( times_times_nat @ zero_zero_nat ) ) ).

% lambda_zero
thf(fact_2291_lambda__zero,axiom,
    ( ( ^ [H4: int] : zero_zero_int )
    = ( times_times_int @ zero_zero_int ) ) ).

% lambda_zero
thf(fact_2292_lambda__zero,axiom,
    ( ( ^ [H4: code_integer] : zero_z3403309356797280102nteger )
    = ( times_3573771949741848930nteger @ zero_z3403309356797280102nteger ) ) ).

% lambda_zero
thf(fact_2293_lambda__zero,axiom,
    ( ( ^ [H4: rat] : zero_zero_rat )
    = ( times_times_rat @ zero_zero_rat ) ) ).

% lambda_zero
thf(fact_2294_lambda__one,axiom,
    ( ( ^ [X4: code_natural] : X4 )
    = ( times_2397367101498566445atural @ one_one_Code_natural ) ) ).

% lambda_one
thf(fact_2295_lambda__one,axiom,
    ( ( ^ [X4: nat] : X4 )
    = ( times_times_nat @ one_one_nat ) ) ).

% lambda_one
thf(fact_2296_lambda__one,axiom,
    ( ( ^ [X4: int] : X4 )
    = ( times_times_int @ one_one_int ) ) ).

% lambda_one
thf(fact_2297_lambda__one,axiom,
    ( ( ^ [X4: code_integer] : X4 )
    = ( times_3573771949741848930nteger @ one_one_Code_integer ) ) ).

% lambda_one
thf(fact_2298_lambda__one,axiom,
    ( ( ^ [X4: rat] : X4 )
    = ( times_times_rat @ one_one_rat ) ) ).

% lambda_one
thf(fact_2299_frac__ge__0,axiom,
    ! [X: rat] : ( ord_less_eq_rat @ zero_zero_rat @ ( archimedean_frac_rat @ X ) ) ).

% frac_ge_0
thf(fact_2300_frac__lt__1,axiom,
    ! [X: rat] : ( ord_less_rat @ ( archimedean_frac_rat @ X ) @ one_one_rat ) ).

% frac_lt_1
thf(fact_2301_frac__1__eq,axiom,
    ! [X: rat] :
      ( ( archimedean_frac_rat @ ( plus_plus_rat @ X @ one_one_rat ) )
      = ( archimedean_frac_rat @ X ) ) ).

% frac_1_eq
thf(fact_2302_Nats__0,axiom,
    member_nat @ zero_zero_nat @ semiring_1_Nats_nat ).

% Nats_0
thf(fact_2303_Nats__0,axiom,
    member_Code_integer @ zero_z3403309356797280102nteger @ semiri2551628265256775642nteger ).

% Nats_0
thf(fact_2304_Nats__0,axiom,
    member_rat @ zero_zero_rat @ semiring_1_Nats_rat ).

% Nats_0
thf(fact_2305_Nats__0,axiom,
    member_Code_natural @ zero_z2226904508553997617atural @ semiri1375223417013493157atural ).

% Nats_0
thf(fact_2306_Nats__0,axiom,
    member_int @ zero_zero_int @ semiring_1_Nats_int ).

% Nats_0
thf(fact_2307_Nats__add,axiom,
    ! [A: rat,B: rat] :
      ( ( member_rat @ A @ semiring_1_Nats_rat )
     => ( ( member_rat @ B @ semiring_1_Nats_rat )
       => ( member_rat @ ( plus_plus_rat @ A @ B ) @ semiring_1_Nats_rat ) ) ) ).

% Nats_add
thf(fact_2308_Nats__add,axiom,
    ! [A: nat,B: nat] :
      ( ( member_nat @ A @ semiring_1_Nats_nat )
     => ( ( member_nat @ B @ semiring_1_Nats_nat )
       => ( member_nat @ ( plus_plus_nat @ A @ B ) @ semiring_1_Nats_nat ) ) ) ).

% Nats_add
thf(fact_2309_Nats__add,axiom,
    ! [A: int,B: int] :
      ( ( member_int @ A @ semiring_1_Nats_int )
     => ( ( member_int @ B @ semiring_1_Nats_int )
       => ( member_int @ ( plus_plus_int @ A @ B ) @ semiring_1_Nats_int ) ) ) ).

% Nats_add
thf(fact_2310_Nats__1,axiom,
    member_nat @ one_one_nat @ semiring_1_Nats_nat ).

% Nats_1
thf(fact_2311_Nats__1,axiom,
    member_Code_integer @ one_one_Code_integer @ semiri2551628265256775642nteger ).

% Nats_1
thf(fact_2312_Nats__1,axiom,
    member_rat @ one_one_rat @ semiring_1_Nats_rat ).

% Nats_1
thf(fact_2313_Nats__1,axiom,
    member_Code_natural @ one_one_Code_natural @ semiri1375223417013493157atural ).

% Nats_1
thf(fact_2314_Nats__1,axiom,
    member_int @ one_one_int @ semiring_1_Nats_int ).

% Nats_1
thf(fact_2315_of__nat__in__Nats,axiom,
    ! [N: nat] : ( member_int @ ( semiri1314217659103216013at_int @ N ) @ semiring_1_Nats_int ) ).

% of_nat_in_Nats
thf(fact_2316_of__nat__in__Nats,axiom,
    ! [N: nat] : ( member_nat @ ( semiri1316708129612266289at_nat @ N ) @ semiring_1_Nats_nat ) ).

% of_nat_in_Nats
thf(fact_2317_Nats__induct,axiom,
    ! [X: int,P: int > $o] :
      ( ( member_int @ X @ semiring_1_Nats_int )
     => ( ! [N2: nat] : ( P @ ( semiri1314217659103216013at_int @ N2 ) )
       => ( P @ X ) ) ) ).

% Nats_induct
thf(fact_2318_Nats__induct,axiom,
    ! [X: nat,P: nat > $o] :
      ( ( member_nat @ X @ semiring_1_Nats_nat )
     => ( ! [N2: nat] : ( P @ ( semiri1316708129612266289at_nat @ N2 ) )
       => ( P @ X ) ) ) ).

% Nats_induct
thf(fact_2319_Nats__cases,axiom,
    ! [X: int] :
      ( ( member_int @ X @ semiring_1_Nats_int )
     => ~ ! [N2: nat] :
            ( X
           != ( semiri1314217659103216013at_int @ N2 ) ) ) ).

% Nats_cases
thf(fact_2320_Nats__cases,axiom,
    ! [X: nat] :
      ( ( member_nat @ X @ semiring_1_Nats_nat )
     => ~ ! [N2: nat] :
            ( X
           != ( semiri1316708129612266289at_nat @ N2 ) ) ) ).

% Nats_cases
thf(fact_2321_Nats__subset__Ints,axiom,
    ord_less_eq_set_int @ semiring_1_Nats_int @ ring_1_Ints_int ).

% Nats_subset_Ints
thf(fact_2322_nat__zero__as__int,axiom,
    ( zero_zero_nat
    = ( nat2 @ zero_zero_int ) ) ).

% nat_zero_as_int
thf(fact_2323_nat__le__eq__zle,axiom,
    ! [W: int,Z: int] :
      ( ( ( ord_less_int @ zero_zero_int @ W )
        | ( ord_less_eq_int @ zero_zero_int @ Z ) )
     => ( ( ord_less_eq_nat @ ( nat2 @ W ) @ ( nat2 @ Z ) )
        = ( ord_less_eq_int @ W @ Z ) ) ) ).

% nat_le_eq_zle
thf(fact_2324_le__nat__iff,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( ord_less_eq_nat @ N @ ( nat2 @ K ) )
        = ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ N ) @ K ) ) ) ).

% le_nat_iff
thf(fact_2325_int__eq__iff,axiom,
    ! [M: nat,Z: int] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = Z )
      = ( ( M
          = ( nat2 @ Z ) )
        & ( ord_less_eq_int @ zero_zero_int @ Z ) ) ) ).

% int_eq_iff
thf(fact_2326_nat__0__le,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z ) )
        = Z ) ) ).

% nat_0_le
thf(fact_2327_nat__abs__triangle__ineq,axiom,
    ! [K: int,L: int] : ( ord_less_eq_nat @ ( nat2 @ ( abs_abs_int @ ( plus_plus_int @ K @ L ) ) ) @ ( plus_plus_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ ( nat2 @ ( abs_abs_int @ L ) ) ) ) ).

% nat_abs_triangle_ineq
thf(fact_2328_nat__one__as__int,axiom,
    ( one_one_nat
    = ( nat2 @ one_one_int ) ) ).

% nat_one_as_int
thf(fact_2329_ex__less__of__nat__mult,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ X )
     => ? [N2: nat] : ( ord_less_rat @ Y3 @ ( times_times_rat @ ( semiri681578069525770553at_rat @ N2 ) @ X ) ) ) ).

% ex_less_of_nat_mult
thf(fact_2330_mult__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ C @ D )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_mono
thf(fact_2331_mult__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ C @ D )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_mono
thf(fact_2332_mult__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ D )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
           => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_mono
thf(fact_2333_mult__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_mono
thf(fact_2334_mult__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ( ord_less_eq_int @ zero_zero_int @ B )
         => ( ( ord_less_eq_int @ zero_zero_int @ C )
           => ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_mono
thf(fact_2335_mult__mono_H,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ C @ D )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_mono'
thf(fact_2336_mult__mono_H,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ C @ D )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_mono'
thf(fact_2337_mult__mono_H,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ D )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
           => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_mono'
thf(fact_2338_mult__mono_H,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_mono'
thf(fact_2339_mult__mono_H,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ( ord_less_eq_int @ zero_zero_int @ A )
         => ( ( ord_less_eq_int @ zero_zero_int @ C )
           => ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_mono'
thf(fact_2340_zero__le__square,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ A ) ) ).

% zero_le_square
thf(fact_2341_zero__le__square,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ zero_zero_rat @ ( times_times_rat @ A @ A ) ) ).

% zero_le_square
thf(fact_2342_zero__le__square,axiom,
    ! [A: int] : ( ord_less_eq_int @ zero_zero_int @ ( times_times_int @ A @ A ) ) ).

% zero_le_square
thf(fact_2343_split__mult__pos__le,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) )
        | ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger ) ) )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ).

% split_mult_pos_le
thf(fact_2344_split__mult__pos__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) ) )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) ) ) ).

% split_mult_pos_le
thf(fact_2345_split__mult__pos__le,axiom,
    ! [A: int,B: int] :
      ( ( ( ( ord_less_eq_int @ zero_zero_int @ A )
          & ( ord_less_eq_int @ zero_zero_int @ B ) )
        | ( ( ord_less_eq_int @ A @ zero_zero_int )
          & ( ord_less_eq_int @ B @ zero_zero_int ) ) )
     => ( ord_less_eq_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ).

% split_mult_pos_le
thf(fact_2346_mult__left__mono__neg,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% mult_left_mono_neg
thf(fact_2347_mult__left__mono__neg,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( ord_less_eq_rat @ C @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% mult_left_mono_neg
thf(fact_2348_mult__left__mono__neg,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( ord_less_eq_int @ C @ zero_zero_int )
       => ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% mult_left_mono_neg
thf(fact_2349_mult__nonpos__nonpos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ) ).

% mult_nonpos_nonpos
thf(fact_2350_mult__nonpos__nonpos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ B @ zero_zero_rat )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) ) ) ) ).

% mult_nonpos_nonpos
thf(fact_2351_mult__nonpos__nonpos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ) ).

% mult_nonpos_nonpos
thf(fact_2352_mult__left__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_2353_mult__left__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_2354_mult__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_2355_mult__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_2356_mult__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ C )
       => ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_2357_mult__right__mono__neg,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% mult_right_mono_neg
thf(fact_2358_mult__right__mono__neg,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( ord_less_eq_rat @ C @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% mult_right_mono_neg
thf(fact_2359_mult__right__mono__neg,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( ord_less_eq_int @ C @ zero_zero_int )
       => ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% mult_right_mono_neg
thf(fact_2360_mult__right__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_2361_mult__right__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_2362_mult__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_2363_mult__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_2364_mult__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ C )
       => ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_2365_mult__le__0__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger ) )
        | ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) ) ) ) ).

% mult_le_0_iff
thf(fact_2366_mult__le__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) ) ) ) ).

% mult_le_0_iff
thf(fact_2367_mult__le__0__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ A @ B ) @ zero_zero_int )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ A )
          & ( ord_less_eq_int @ B @ zero_zero_int ) )
        | ( ( ord_less_eq_int @ A @ zero_zero_int )
          & ( ord_less_eq_int @ zero_zero_int @ B ) ) ) ) ).

% mult_le_0_iff
thf(fact_2368_split__mult__neg__le,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
          & ( ord_le1926595141338095240atural @ B @ zero_z2226904508553997617atural ) )
        | ( ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural )
          & ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B ) ) )
     => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ).

% split_mult_neg_le
thf(fact_2369_split__mult__neg__le,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger ) )
        | ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) ) )
     => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ).

% split_mult_neg_le
thf(fact_2370_split__mult__neg__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) ) )
     => ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat ) ) ).

% split_mult_neg_le
thf(fact_2371_split__mult__neg__le,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ( ord_less_eq_nat @ zero_zero_nat @ A )
          & ( ord_less_eq_nat @ B @ zero_zero_nat ) )
        | ( ( ord_less_eq_nat @ A @ zero_zero_nat )
          & ( ord_less_eq_nat @ zero_zero_nat @ B ) ) )
     => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ).

% split_mult_neg_le
thf(fact_2372_split__mult__neg__le,axiom,
    ! [A: int,B: int] :
      ( ( ( ( ord_less_eq_int @ zero_zero_int @ A )
          & ( ord_less_eq_int @ B @ zero_zero_int ) )
        | ( ( ord_less_eq_int @ A @ zero_zero_int )
          & ( ord_less_eq_int @ zero_zero_int @ B ) ) )
     => ( ord_less_eq_int @ ( times_times_int @ A @ B ) @ zero_zero_int ) ) ).

% split_mult_neg_le
thf(fact_2373_mult__nonneg__nonneg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( times_2397367101498566445atural @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_2374_mult__nonneg__nonneg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_2375_mult__nonneg__nonneg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_2376_mult__nonneg__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_2377_mult__nonneg__nonneg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_2378_mult__nonneg__nonpos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_nonneg_nonpos
thf(fact_2379_mult__nonneg__nonpos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_nonneg_nonpos
thf(fact_2380_mult__nonneg__nonpos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ B @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% mult_nonneg_nonpos
thf(fact_2381_mult__nonneg__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% mult_nonneg_nonpos
thf(fact_2382_mult__nonneg__nonpos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( times_times_int @ A @ B ) @ zero_zero_int ) ) ) ).

% mult_nonneg_nonpos
thf(fact_2383_mult__nonpos__nonneg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_nonpos_nonneg
thf(fact_2384_mult__nonpos__nonneg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_nonpos_nonneg
thf(fact_2385_mult__nonpos__nonneg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% mult_nonpos_nonneg
thf(fact_2386_mult__nonpos__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% mult_nonpos_nonneg
thf(fact_2387_mult__nonpos__nonneg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ ( times_times_int @ A @ B ) @ zero_zero_int ) ) ) ).

% mult_nonpos_nonneg
thf(fact_2388_mult__nonneg__nonpos2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ B @ A ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_2389_mult__nonneg__nonpos2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ B @ A ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_2390_mult__nonneg__nonpos2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ B @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( times_times_rat @ B @ A ) @ zero_zero_rat ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_2391_mult__nonneg__nonpos2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( times_times_nat @ B @ A ) @ zero_zero_nat ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_2392_mult__nonneg__nonpos2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( times_times_int @ B @ A ) @ zero_zero_int ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_2393_zero__le__mult__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) )
        | ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger ) ) ) ) ).

% zero_le_mult_iff
thf(fact_2394_zero__le__mult__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) ) ) ) ).

% zero_le_mult_iff
thf(fact_2395_zero__le__mult__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( times_times_int @ A @ B ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ A )
          & ( ord_less_eq_int @ zero_zero_int @ B ) )
        | ( ( ord_less_eq_int @ A @ zero_zero_int )
          & ( ord_less_eq_int @ B @ zero_zero_int ) ) ) ) ).

% zero_le_mult_iff
thf(fact_2396_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_2397_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_2398_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_2399_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_2400_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ C )
       => ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_2401_mult__neg__neg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ) ).

% mult_neg_neg
thf(fact_2402_mult__neg__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) ) ) ) ).

% mult_neg_neg
thf(fact_2403_mult__neg__neg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ) ).

% mult_neg_neg
thf(fact_2404_not__square__less__zero,axiom,
    ! [A: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ A ) @ zero_z3403309356797280102nteger ) ).

% not_square_less_zero
thf(fact_2405_not__square__less__zero,axiom,
    ! [A: rat] :
      ~ ( ord_less_rat @ ( times_times_rat @ A @ A ) @ zero_zero_rat ) ).

% not_square_less_zero
thf(fact_2406_not__square__less__zero,axiom,
    ! [A: int] :
      ~ ( ord_less_int @ ( times_times_int @ A @ A ) @ zero_zero_int ) ).

% not_square_less_zero
thf(fact_2407_mult__less__0__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger ) )
        | ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) ) ) ) ).

% mult_less_0_iff
thf(fact_2408_mult__less__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ B @ zero_zero_rat ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ zero_zero_rat @ B ) ) ) ) ).

% mult_less_0_iff
thf(fact_2409_mult__less__0__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ A @ B ) @ zero_zero_int )
      = ( ( ( ord_less_int @ zero_zero_int @ A )
          & ( ord_less_int @ B @ zero_zero_int ) )
        | ( ( ord_less_int @ A @ zero_zero_int )
          & ( ord_less_int @ zero_zero_int @ B ) ) ) ) ).

% mult_less_0_iff
thf(fact_2410_mult__neg__pos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_neg_pos
thf(fact_2411_mult__neg__pos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_neg_pos
thf(fact_2412_mult__neg__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% mult_neg_pos
thf(fact_2413_mult__neg__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% mult_neg_pos
thf(fact_2414_mult__neg__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ ( times_times_int @ A @ B ) @ zero_zero_int ) ) ) ).

% mult_neg_pos
thf(fact_2415_mult__pos__neg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_pos_neg
thf(fact_2416_mult__pos__neg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_pos_neg
thf(fact_2417_mult__pos__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% mult_pos_neg
thf(fact_2418_mult__pos__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% mult_pos_neg
thf(fact_2419_mult__pos__neg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( times_times_int @ A @ B ) @ zero_zero_int ) ) ) ).

% mult_pos_neg
thf(fact_2420_mult__pos__pos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( times_2397367101498566445atural @ A @ B ) ) ) ) ).

% mult_pos_pos
thf(fact_2421_mult__pos__pos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ) ).

% mult_pos_pos
thf(fact_2422_mult__pos__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) ) ) ) ).

% mult_pos_pos
thf(fact_2423_mult__pos__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) ) ) ) ).

% mult_pos_pos
thf(fact_2424_mult__pos__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ) ).

% mult_pos_pos
thf(fact_2425_mult__pos__neg2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ B @ A ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_pos_neg2
thf(fact_2426_mult__pos__neg2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ B @ A ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_pos_neg2
thf(fact_2427_mult__pos__neg2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( times_times_rat @ B @ A ) @ zero_zero_rat ) ) ) ).

% mult_pos_neg2
thf(fact_2428_mult__pos__neg2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( times_times_nat @ B @ A ) @ zero_zero_nat ) ) ) ).

% mult_pos_neg2
thf(fact_2429_mult__pos__neg2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( times_times_int @ B @ A ) @ zero_zero_int ) ) ) ).

% mult_pos_neg2
thf(fact_2430_zero__less__mult__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) )
        | ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger ) ) ) ) ).

% zero_less_mult_iff
thf(fact_2431_zero__less__mult__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ zero_zero_rat @ B ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ B @ zero_zero_rat ) ) ) ) ).

% zero_less_mult_iff
thf(fact_2432_zero__less__mult__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ ( times_times_int @ A @ B ) )
      = ( ( ( ord_less_int @ zero_zero_int @ A )
          & ( ord_less_int @ zero_zero_int @ B ) )
        | ( ( ord_less_int @ A @ zero_zero_int )
          & ( ord_less_int @ B @ zero_zero_int ) ) ) ) ).

% zero_less_mult_iff
thf(fact_2433_zero__less__mult__pos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( times_2397367101498566445atural @ A @ B ) )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_2434_zero__less__mult__pos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_2435_zero__less__mult__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ord_less_rat @ zero_zero_rat @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_2436_zero__less__mult__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) )
     => ( ( ord_less_nat @ zero_zero_nat @ A )
       => ( ord_less_nat @ zero_zero_nat @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_2437_zero__less__mult__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ ( times_times_int @ A @ B ) )
     => ( ( ord_less_int @ zero_zero_int @ A )
       => ( ord_less_int @ zero_zero_int @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_2438_zero__less__mult__pos2,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( times_2397367101498566445atural @ B @ A ) )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_2439_zero__less__mult__pos2,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ B @ A ) )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_2440_zero__less__mult__pos2,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ B @ A ) )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ord_less_rat @ zero_zero_rat @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_2441_zero__less__mult__pos2,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ B @ A ) )
     => ( ( ord_less_nat @ zero_zero_nat @ A )
       => ( ord_less_nat @ zero_zero_nat @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_2442_zero__less__mult__pos2,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( times_times_int @ B @ A ) )
     => ( ( ord_less_int @ zero_zero_int @ A )
       => ( ord_less_int @ zero_zero_int @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_2443_mult__less__cancel__left__neg,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( ord_le6747313008572928689nteger @ B @ A ) ) ) ).

% mult_less_cancel_left_neg
thf(fact_2444_mult__less__cancel__left__neg,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
        = ( ord_less_rat @ B @ A ) ) ) ).

% mult_less_cancel_left_neg
thf(fact_2445_mult__less__cancel__left__neg,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ C @ zero_zero_int )
     => ( ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( ord_less_int @ B @ A ) ) ) ).

% mult_less_cancel_left_neg
thf(fact_2446_mult__less__cancel__left__pos,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
     => ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( ord_le6747313008572928689nteger @ A @ B ) ) ) ).

% mult_less_cancel_left_pos
thf(fact_2447_mult__less__cancel__left__pos,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
        = ( ord_less_rat @ A @ B ) ) ) ).

% mult_less_cancel_left_pos
thf(fact_2448_mult__less__cancel__left__pos,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ C )
     => ( ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( ord_less_int @ A @ B ) ) ) ).

% mult_less_cancel_left_pos
thf(fact_2449_mult__strict__left__mono__neg,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% mult_strict_left_mono_neg
thf(fact_2450_mult__strict__left__mono__neg,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ( ord_less_rat @ C @ zero_zero_rat )
       => ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% mult_strict_left_mono_neg
thf(fact_2451_mult__strict__left__mono__neg,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_int @ B @ A )
     => ( ( ord_less_int @ C @ zero_zero_int )
       => ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% mult_strict_left_mono_neg
thf(fact_2452_mult__strict__left__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) ) ) ) ).

% mult_strict_left_mono
thf(fact_2453_mult__strict__left__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% mult_strict_left_mono
thf(fact_2454_mult__strict__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% mult_strict_left_mono
thf(fact_2455_mult__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% mult_strict_left_mono
thf(fact_2456_mult__strict__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ zero_zero_int @ C )
       => ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% mult_strict_left_mono
thf(fact_2457_mult__less__cancel__left__disj,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
          & ( ord_le6747313008572928689nteger @ A @ B ) )
        | ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
          & ( ord_le6747313008572928689nteger @ B @ A ) ) ) ) ).

% mult_less_cancel_left_disj
thf(fact_2458_mult__less__cancel__left__disj,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
          & ( ord_less_rat @ A @ B ) )
        | ( ( ord_less_rat @ C @ zero_zero_rat )
          & ( ord_less_rat @ B @ A ) ) ) ) ).

% mult_less_cancel_left_disj
thf(fact_2459_mult__less__cancel__left__disj,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
          & ( ord_less_int @ A @ B ) )
        | ( ( ord_less_int @ C @ zero_zero_int )
          & ( ord_less_int @ B @ A ) ) ) ) ).

% mult_less_cancel_left_disj
thf(fact_2460_mult__strict__right__mono__neg,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% mult_strict_right_mono_neg
thf(fact_2461_mult__strict__right__mono__neg,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ( ord_less_rat @ C @ zero_zero_rat )
       => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% mult_strict_right_mono_neg
thf(fact_2462_mult__strict__right__mono__neg,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_int @ B @ A )
     => ( ( ord_less_int @ C @ zero_zero_int )
       => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% mult_strict_right_mono_neg
thf(fact_2463_mult__strict__right__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ C ) ) ) ) ).

% mult_strict_right_mono
thf(fact_2464_mult__strict__right__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% mult_strict_right_mono
thf(fact_2465_mult__strict__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% mult_strict_right_mono
thf(fact_2466_mult__strict__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% mult_strict_right_mono
thf(fact_2467_mult__strict__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ zero_zero_int @ C )
       => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% mult_strict_right_mono
thf(fact_2468_mult__less__cancel__right__disj,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
          & ( ord_le6747313008572928689nteger @ A @ B ) )
        | ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
          & ( ord_le6747313008572928689nteger @ B @ A ) ) ) ) ).

% mult_less_cancel_right_disj
thf(fact_2469_mult__less__cancel__right__disj,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
          & ( ord_less_rat @ A @ B ) )
        | ( ( ord_less_rat @ C @ zero_zero_rat )
          & ( ord_less_rat @ B @ A ) ) ) ) ).

% mult_less_cancel_right_disj
thf(fact_2470_mult__less__cancel__right__disj,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
          & ( ord_less_int @ A @ B ) )
        | ( ( ord_less_int @ C @ zero_zero_int )
          & ( ord_less_int @ B @ A ) ) ) ) ).

% mult_less_cancel_right_disj
thf(fact_2471_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_2472_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_2473_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_2474_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_2475_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ zero_zero_int @ C )
       => ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_2476_add__scale__eq__noteq,axiom,
    ! [R: nat,A: nat,B: nat,C: nat,D: nat] :
      ( ( R != zero_zero_nat )
     => ( ( ( A = B )
          & ( C != D ) )
       => ( ( plus_plus_nat @ A @ ( times_times_nat @ R @ C ) )
         != ( plus_plus_nat @ B @ ( times_times_nat @ R @ D ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_2477_add__scale__eq__noteq,axiom,
    ! [R: int,A: int,B: int,C: int,D: int] :
      ( ( R != zero_zero_int )
     => ( ( ( A = B )
          & ( C != D ) )
       => ( ( plus_plus_int @ A @ ( times_times_int @ R @ C ) )
         != ( plus_plus_int @ B @ ( times_times_int @ R @ D ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_2478_add__scale__eq__noteq,axiom,
    ! [R: code_integer,A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( R != zero_z3403309356797280102nteger )
     => ( ( ( A = B )
          & ( C != D ) )
       => ( ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ R @ C ) )
         != ( plus_p5714425477246183910nteger @ B @ ( times_3573771949741848930nteger @ R @ D ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_2479_add__scale__eq__noteq,axiom,
    ! [R: rat,A: rat,B: rat,C: rat,D: rat] :
      ( ( R != zero_zero_rat )
     => ( ( ( A = B )
          & ( C != D ) )
       => ( ( plus_plus_rat @ A @ ( times_times_rat @ R @ C ) )
         != ( plus_plus_rat @ B @ ( times_times_rat @ R @ D ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_2480_sum__squares__eq__zero__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ X @ X ) @ ( times_times_int @ Y3 @ Y3 ) )
        = zero_zero_int )
      = ( ( X = zero_zero_int )
        & ( Y3 = zero_zero_int ) ) ) ).

% sum_squares_eq_zero_iff
thf(fact_2481_sum__squares__eq__zero__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ X @ X ) @ ( times_3573771949741848930nteger @ Y3 @ Y3 ) )
        = zero_z3403309356797280102nteger )
      = ( ( X = zero_z3403309356797280102nteger )
        & ( Y3 = zero_z3403309356797280102nteger ) ) ) ).

% sum_squares_eq_zero_iff
thf(fact_2482_sum__squares__eq__zero__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ( plus_plus_rat @ ( times_times_rat @ X @ X ) @ ( times_times_rat @ Y3 @ Y3 ) )
        = zero_zero_rat )
      = ( ( X = zero_zero_rat )
        & ( Y3 = zero_zero_rat ) ) ) ).

% sum_squares_eq_zero_iff
thf(fact_2483_less__1__mult,axiom,
    ! [M: code_natural,N: code_natural] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ M )
     => ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ N )
       => ( ord_le5570908160329646204atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_2484_less__1__mult,axiom,
    ! [M: code_integer,N: code_integer] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ M )
     => ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ N )
       => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_2485_less__1__mult,axiom,
    ! [M: rat,N: rat] :
      ( ( ord_less_rat @ one_one_rat @ M )
     => ( ( ord_less_rat @ one_one_rat @ N )
       => ( ord_less_rat @ one_one_rat @ ( times_times_rat @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_2486_less__1__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ M )
     => ( ( ord_less_nat @ one_one_nat @ N )
       => ( ord_less_nat @ one_one_nat @ ( times_times_nat @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_2487_less__1__mult,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ one_one_int @ M )
     => ( ( ord_less_int @ one_one_int @ N )
       => ( ord_less_int @ one_one_int @ ( times_times_int @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_2488_eq__add__iff1,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ A @ E ) @ C )
        = ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ A @ B ) @ E ) @ C )
        = D ) ) ).

% eq_add_iff1
thf(fact_2489_eq__add__iff1,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ E ) @ C )
        = D ) ) ).

% eq_add_iff1
thf(fact_2490_eq__add__iff1,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C )
        = ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ E ) @ C )
        = D ) ) ).

% eq_add_iff1
thf(fact_2491_eq__add__iff2,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ A @ E ) @ C )
        = ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( C
        = ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ B @ A ) @ E ) @ D ) ) ) ).

% eq_add_iff2
thf(fact_2492_eq__add__iff2,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( C
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ B @ A ) @ E ) @ D ) ) ) ).

% eq_add_iff2
thf(fact_2493_eq__add__iff2,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C )
        = ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( C
        = ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ B @ A ) @ E ) @ D ) ) ) ).

% eq_add_iff2
thf(fact_2494_square__diff__square__factored,axiom,
    ! [X: int,Y3: int] :
      ( ( minus_minus_int @ ( times_times_int @ X @ X ) @ ( times_times_int @ Y3 @ Y3 ) )
      = ( times_times_int @ ( plus_plus_int @ X @ Y3 ) @ ( minus_minus_int @ X @ Y3 ) ) ) ).

% square_diff_square_factored
thf(fact_2495_square__diff__square__factored,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ X @ X ) @ ( times_3573771949741848930nteger @ Y3 @ Y3 ) )
      = ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ X @ Y3 ) @ ( minus_8373710615458151222nteger @ X @ Y3 ) ) ) ).

% square_diff_square_factored
thf(fact_2496_square__diff__square__factored,axiom,
    ! [X: rat,Y3: rat] :
      ( ( minus_minus_rat @ ( times_times_rat @ X @ X ) @ ( times_times_rat @ Y3 @ Y3 ) )
      = ( times_times_rat @ ( plus_plus_rat @ X @ Y3 ) @ ( minus_minus_rat @ X @ Y3 ) ) ) ).

% square_diff_square_factored
thf(fact_2497_square__eq__1__iff,axiom,
    ! [X: int] :
      ( ( ( times_times_int @ X @ X )
        = one_one_int )
      = ( ( X = one_one_int )
        | ( X
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% square_eq_1_iff
thf(fact_2498_square__eq__1__iff,axiom,
    ! [X: code_integer] :
      ( ( ( times_3573771949741848930nteger @ X @ X )
        = one_one_Code_integer )
      = ( ( X = one_one_Code_integer )
        | ( X
          = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ) ) ).

% square_eq_1_iff
thf(fact_2499_square__eq__1__iff,axiom,
    ! [X: rat] :
      ( ( ( times_times_rat @ X @ X )
        = one_one_rat )
      = ( ( X = one_one_rat )
        | ( X
          = ( uminus_uminus_rat @ one_one_rat ) ) ) ) ).

% square_eq_1_iff
thf(fact_2500_left__right__inverse__power,axiom,
    ! [X: code_natural,Y3: code_natural,N: nat] :
      ( ( ( times_2397367101498566445atural @ X @ Y3 )
        = one_one_Code_natural )
     => ( ( times_2397367101498566445atural @ ( power_7079662738309270450atural @ X @ N ) @ ( power_7079662738309270450atural @ Y3 @ N ) )
        = one_one_Code_natural ) ) ).

% left_right_inverse_power
thf(fact_2501_left__right__inverse__power,axiom,
    ! [X: nat,Y3: nat,N: nat] :
      ( ( ( times_times_nat @ X @ Y3 )
        = one_one_nat )
     => ( ( times_times_nat @ ( power_power_nat @ X @ N ) @ ( power_power_nat @ Y3 @ N ) )
        = one_one_nat ) ) ).

% left_right_inverse_power
thf(fact_2502_left__right__inverse__power,axiom,
    ! [X: int,Y3: int,N: nat] :
      ( ( ( times_times_int @ X @ Y3 )
        = one_one_int )
     => ( ( times_times_int @ ( power_power_int @ X @ N ) @ ( power_power_int @ Y3 @ N ) )
        = one_one_int ) ) ).

% left_right_inverse_power
thf(fact_2503_left__right__inverse__power,axiom,
    ! [X: code_integer,Y3: code_integer,N: nat] :
      ( ( ( times_3573771949741848930nteger @ X @ Y3 )
        = one_one_Code_integer )
     => ( ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ X @ N ) @ ( power_8256067586552552935nteger @ Y3 @ N ) )
        = one_one_Code_integer ) ) ).

% left_right_inverse_power
thf(fact_2504_left__right__inverse__power,axiom,
    ! [X: rat,Y3: rat,N: nat] :
      ( ( ( times_times_rat @ X @ Y3 )
        = one_one_rat )
     => ( ( times_times_rat @ ( power_power_rat @ X @ N ) @ ( power_power_rat @ Y3 @ N ) )
        = one_one_rat ) ) ).

% left_right_inverse_power
thf(fact_2505_abs__mult__less,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ A ) @ C )
     => ( ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ B ) @ D )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) @ ( times_3573771949741848930nteger @ C @ D ) ) ) ) ).

% abs_mult_less
thf(fact_2506_abs__mult__less,axiom,
    ! [A: rat,C: rat,B: rat,D: rat] :
      ( ( ord_less_rat @ ( abs_abs_rat @ A ) @ C )
     => ( ( ord_less_rat @ ( abs_abs_rat @ B ) @ D )
       => ( ord_less_rat @ ( times_times_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) @ ( times_times_rat @ C @ D ) ) ) ) ).

% abs_mult_less
thf(fact_2507_abs__mult__less,axiom,
    ! [A: int,C: int,B: int,D: int] :
      ( ( ord_less_int @ ( abs_abs_int @ A ) @ C )
     => ( ( ord_less_int @ ( abs_abs_int @ B ) @ D )
       => ( ord_less_int @ ( times_times_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) @ ( times_times_int @ C @ D ) ) ) ) ).

% abs_mult_less
thf(fact_2508_mult__less__mono2,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ K @ I ) @ ( times_times_nat @ K @ J ) ) ) ) ).

% mult_less_mono2
thf(fact_2509_mult__less__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J @ K ) ) ) ) ).

% mult_less_mono1
thf(fact_2510_power__add,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( power_power_nat @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_times_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) ) ) ).

% power_add
thf(fact_2511_power__add,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( power_power_int @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_times_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) ) ) ).

% power_add
thf(fact_2512_power__add,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( power_8256067586552552935nteger @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% power_add
thf(fact_2513_power__add,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( power_power_rat @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_times_rat @ ( power_power_rat @ A @ M ) @ ( power_power_rat @ A @ N ) ) ) ).

% power_add
thf(fact_2514_zmult__zless__mono2,axiom,
    ! [I: int,J: int,K: int] :
      ( ( ord_less_int @ I @ J )
     => ( ( ord_less_int @ zero_zero_int @ K )
       => ( ord_less_int @ ( times_times_int @ K @ I ) @ ( times_times_int @ K @ J ) ) ) ) ).

% zmult_zless_mono2
thf(fact_2515_mult__eq__self__implies__10,axiom,
    ! [M: nat,N: nat] :
      ( ( M
        = ( times_times_nat @ M @ N ) )
     => ( ( N = one_one_nat )
        | ( M = zero_zero_nat ) ) ) ).

% mult_eq_self_implies_10
thf(fact_2516_pos__zmult__eq__1__iff__lemma,axiom,
    ! [M: int,N: int] :
      ( ( ( times_times_int @ M @ N )
        = one_one_int )
     => ( ( M = one_one_int )
        | ( M
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% pos_zmult_eq_1_iff_lemma
thf(fact_2517_zmult__eq__1__iff,axiom,
    ! [M: int,N: int] :
      ( ( ( times_times_int @ M @ N )
        = one_one_int )
      = ( ( ( M = one_one_int )
          & ( N = one_one_int ) )
        | ( ( M
            = ( uminus_uminus_int @ one_one_int ) )
          & ( N
            = ( uminus_uminus_int @ one_one_int ) ) ) ) ) ).

% zmult_eq_1_iff
thf(fact_2518_mult__sgn__abs,axiom,
    ! [X: int] :
      ( ( times_times_int @ ( sgn_sgn_int @ X ) @ ( abs_abs_int @ X ) )
      = X ) ).

% mult_sgn_abs
thf(fact_2519_mult__sgn__abs,axiom,
    ! [X: code_integer] :
      ( ( times_3573771949741848930nteger @ ( sgn_sgn_Code_integer @ X ) @ ( abs_abs_Code_integer @ X ) )
      = X ) ).

% mult_sgn_abs
thf(fact_2520_mult__sgn__abs,axiom,
    ! [X: rat] :
      ( ( times_times_rat @ ( sgn_sgn_rat @ X ) @ ( abs_abs_rat @ X ) )
      = X ) ).

% mult_sgn_abs
thf(fact_2521_sgn__mult__abs,axiom,
    ! [A: int] :
      ( ( times_times_int @ ( sgn_sgn_int @ A ) @ ( abs_abs_int @ A ) )
      = A ) ).

% sgn_mult_abs
thf(fact_2522_sgn__mult__abs,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ ( sgn_sgn_Code_integer @ A ) @ ( abs_abs_Code_integer @ A ) )
      = A ) ).

% sgn_mult_abs
thf(fact_2523_sgn__mult__abs,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ ( sgn_sgn_rat @ A ) @ ( abs_abs_rat @ A ) )
      = A ) ).

% sgn_mult_abs
thf(fact_2524_abs__mult__sgn,axiom,
    ! [A: int] :
      ( ( times_times_int @ ( abs_abs_int @ A ) @ ( sgn_sgn_int @ A ) )
      = A ) ).

% abs_mult_sgn
thf(fact_2525_abs__mult__sgn,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ ( abs_abs_Code_integer @ A ) @ ( sgn_sgn_Code_integer @ A ) )
      = A ) ).

% abs_mult_sgn
thf(fact_2526_abs__mult__sgn,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ ( abs_abs_rat @ A ) @ ( sgn_sgn_rat @ A ) )
      = A ) ).

% abs_mult_sgn
thf(fact_2527_linordered__idom__class_Oabs__sgn,axiom,
    ( abs_abs_int
    = ( ^ [K3: int] : ( times_times_int @ K3 @ ( sgn_sgn_int @ K3 ) ) ) ) ).

% linordered_idom_class.abs_sgn
thf(fact_2528_linordered__idom__class_Oabs__sgn,axiom,
    ( abs_abs_Code_integer
    = ( ^ [K3: code_integer] : ( times_3573771949741848930nteger @ K3 @ ( sgn_sgn_Code_integer @ K3 ) ) ) ) ).

% linordered_idom_class.abs_sgn
thf(fact_2529_linordered__idom__class_Oabs__sgn,axiom,
    ( abs_abs_rat
    = ( ^ [K3: rat] : ( times_times_rat @ K3 @ ( sgn_sgn_rat @ K3 ) ) ) ) ).

% linordered_idom_class.abs_sgn
thf(fact_2530_of__int__of__nat,axiom,
    ( ring_18347121197199848620nteger
    = ( ^ [K3: int] : ( if_Code_integer @ ( ord_less_int @ K3 @ zero_zero_int ) @ ( uminus1351360451143612070nteger @ ( semiri4939895301339042750nteger @ ( nat2 @ ( uminus_uminus_int @ K3 ) ) ) ) @ ( semiri4939895301339042750nteger @ ( nat2 @ K3 ) ) ) ) ) ).

% of_int_of_nat
thf(fact_2531_of__int__of__nat,axiom,
    ( ring_1_of_int_rat
    = ( ^ [K3: int] : ( if_rat @ ( ord_less_int @ K3 @ zero_zero_int ) @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ ( nat2 @ ( uminus_uminus_int @ K3 ) ) ) ) @ ( semiri681578069525770553at_rat @ ( nat2 @ K3 ) ) ) ) ) ).

% of_int_of_nat
thf(fact_2532_of__int__of__nat,axiom,
    ( ring_1_of_int_int
    = ( ^ [K3: int] : ( if_int @ ( ord_less_int @ K3 @ zero_zero_int ) @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( nat2 @ ( uminus_uminus_int @ K3 ) ) ) ) @ ( semiri1314217659103216013at_int @ ( nat2 @ K3 ) ) ) ) ) ).

% of_int_of_nat
thf(fact_2533_field__le__mult__one__interval,axiom,
    ! [X: rat,Y3: rat] :
      ( ! [Z6: rat] :
          ( ( ord_less_rat @ zero_zero_rat @ Z6 )
         => ( ( ord_less_rat @ Z6 @ one_one_rat )
           => ( ord_less_eq_rat @ ( times_times_rat @ Z6 @ X ) @ Y3 ) ) )
     => ( ord_less_eq_rat @ X @ Y3 ) ) ).

% field_le_mult_one_interval
thf(fact_2534_of__int__nonneg,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( ring_18347121197199848620nteger @ Z ) ) ) ).

% of_int_nonneg
thf(fact_2535_of__int__nonneg,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( ring_1_of_int_rat @ Z ) ) ) ).

% of_int_nonneg
thf(fact_2536_of__int__nonneg,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ord_less_eq_int @ zero_zero_int @ ( ring_1_of_int_int @ Z ) ) ) ).

% of_int_nonneg
thf(fact_2537_nat__mono__iff,axiom,
    ! [Z: int,W: int] :
      ( ( ord_less_int @ zero_zero_int @ Z )
     => ( ( ord_less_nat @ ( nat2 @ W ) @ ( nat2 @ Z ) )
        = ( ord_less_int @ W @ Z ) ) ) ).

% nat_mono_iff
thf(fact_2538_nat__less__eq__zless,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ W )
     => ( ( ord_less_nat @ ( nat2 @ W ) @ ( nat2 @ Z ) )
        = ( ord_less_int @ W @ Z ) ) ) ).

% nat_less_eq_zless
thf(fact_2539_nat__eq__iff,axiom,
    ! [W: int,M: nat] :
      ( ( ( nat2 @ W )
        = M )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ W )
         => ( W
            = ( semiri1314217659103216013at_int @ M ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ W )
         => ( M = zero_zero_nat ) ) ) ) ).

% nat_eq_iff
thf(fact_2540_nat__eq__iff2,axiom,
    ! [M: nat,W: int] :
      ( ( M
        = ( nat2 @ W ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ W )
         => ( W
            = ( semiri1314217659103216013at_int @ M ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ W )
         => ( M = zero_zero_nat ) ) ) ) ).

% nat_eq_iff2
thf(fact_2541_nat__add__distrib,axiom,
    ! [Z: int,Z4: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( ord_less_eq_int @ zero_zero_int @ Z4 )
       => ( ( nat2 @ ( plus_plus_int @ Z @ Z4 ) )
          = ( plus_plus_nat @ ( nat2 @ Z ) @ ( nat2 @ Z4 ) ) ) ) ) ).

% nat_add_distrib
thf(fact_2542_zless__nat__eq__int__zless,axiom,
    ! [M: nat,Z: int] :
      ( ( ord_less_nat @ M @ ( nat2 @ Z ) )
      = ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ Z ) ) ).

% zless_nat_eq_int_zless
thf(fact_2543_nat__int__add,axiom,
    ! [A: nat,B: nat] :
      ( ( nat2 @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) )
      = ( plus_plus_nat @ A @ B ) ) ).

% nat_int_add
thf(fact_2544_Nats__diff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( member_Code_integer @ A @ semiri2551628265256775642nteger )
     => ( ( member_Code_integer @ B @ semiri2551628265256775642nteger )
       => ( ( ord_le3102999989581377725nteger @ B @ A )
         => ( member_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) @ semiri2551628265256775642nteger ) ) ) ) ).

% Nats_diff
thf(fact_2545_Nats__diff,axiom,
    ! [A: rat,B: rat] :
      ( ( member_rat @ A @ semiring_1_Nats_rat )
     => ( ( member_rat @ B @ semiring_1_Nats_rat )
       => ( ( ord_less_eq_rat @ B @ A )
         => ( member_rat @ ( minus_minus_rat @ A @ B ) @ semiring_1_Nats_rat ) ) ) ) ).

% Nats_diff
thf(fact_2546_Nats__diff,axiom,
    ! [A: int,B: int] :
      ( ( member_int @ A @ semiring_1_Nats_int )
     => ( ( member_int @ B @ semiring_1_Nats_int )
       => ( ( ord_less_eq_int @ B @ A )
         => ( member_int @ ( minus_minus_int @ A @ B ) @ semiring_1_Nats_int ) ) ) ) ).

% Nats_diff
thf(fact_2547_mult__less__le__imp__less,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ C @ D )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
         => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_less_le_imp_less
thf(fact_2548_mult__less__le__imp__less,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ C @ D )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
         => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_less_le_imp_less
thf(fact_2549_mult__less__le__imp__less,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ D )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
         => ( ( ord_less_rat @ zero_zero_rat @ C )
           => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_less_le_imp_less
thf(fact_2550_mult__less__le__imp__less,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_less_le_imp_less
thf(fact_2551_mult__less__le__imp__less,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ( ord_less_eq_int @ zero_zero_int @ A )
         => ( ( ord_less_int @ zero_zero_int @ C )
           => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_less_le_imp_less
thf(fact_2552_mult__le__less__imp__less,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ C @ D )
       => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_le_less_imp_less
thf(fact_2553_mult__le__less__imp__less,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ C @ D )
       => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_le_less_imp_less
thf(fact_2554_mult__le__less__imp__less,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_rat @ C @ D )
       => ( ( ord_less_rat @ zero_zero_rat @ A )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
           => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_le_less_imp_less
thf(fact_2555_mult__le__less__imp__less,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ( ord_less_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_le_less_imp_less
thf(fact_2556_mult__le__less__imp__less,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ( ord_less_int @ zero_zero_int @ A )
         => ( ( ord_less_eq_int @ zero_zero_int @ C )
           => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_le_less_imp_less
thf(fact_2557_mult__right__le__imp__le,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ C ) )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le1926595141338095240atural @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_2558_mult__right__le__imp__le,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le3102999989581377725nteger @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_2559_mult__right__le__imp__le,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_2560_mult__right__le__imp__le,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_2561_mult__right__le__imp__le,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
     => ( ( ord_less_int @ zero_zero_int @ C )
       => ( ord_less_eq_int @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_2562_mult__left__le__imp__le,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le1926595141338095240atural @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_2563_mult__left__le__imp__le,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le3102999989581377725nteger @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_2564_mult__left__le__imp__le,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_2565_mult__left__le__imp__le,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_2566_mult__left__le__imp__le,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
     => ( ( ord_less_int @ zero_zero_int @ C )
       => ( ord_less_eq_int @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_2567_mult__le__cancel__left__pos,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
     => ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( ord_le3102999989581377725nteger @ A @ B ) ) ) ).

% mult_le_cancel_left_pos
thf(fact_2568_mult__le__cancel__left__pos,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
        = ( ord_less_eq_rat @ A @ B ) ) ) ).

% mult_le_cancel_left_pos
thf(fact_2569_mult__le__cancel__left__pos,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ C )
     => ( ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( ord_less_eq_int @ A @ B ) ) ) ).

% mult_le_cancel_left_pos
thf(fact_2570_mult__le__cancel__left__neg,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( ord_le3102999989581377725nteger @ B @ A ) ) ) ).

% mult_le_cancel_left_neg
thf(fact_2571_mult__le__cancel__left__neg,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
        = ( ord_less_eq_rat @ B @ A ) ) ) ).

% mult_le_cancel_left_neg
thf(fact_2572_mult__le__cancel__left__neg,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ C @ zero_zero_int )
     => ( ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( ord_less_eq_int @ B @ A ) ) ) ).

% mult_le_cancel_left_neg
thf(fact_2573_mult__less__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ A @ B ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ B @ A ) ) ) ) ).

% mult_less_cancel_right
thf(fact_2574_mult__less__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ A @ B ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ B @ A ) ) ) ) ).

% mult_less_cancel_right
thf(fact_2575_mult__less__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ A @ B ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ B @ A ) ) ) ) ).

% mult_less_cancel_right
thf(fact_2576_mult__strict__mono_H,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ C @ D )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono'
thf(fact_2577_mult__strict__mono_H,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ C @ D )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono'
thf(fact_2578_mult__strict__mono_H,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ C @ D )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
           => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono'
thf(fact_2579_mult__strict__mono_H,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono'
thf(fact_2580_mult__strict__mono_H,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ( ord_less_eq_int @ zero_zero_int @ A )
         => ( ( ord_less_eq_int @ zero_zero_int @ C )
           => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono'
thf(fact_2581_mult__right__less__imp__less,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ C ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le5570908160329646204atural @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_2582_mult__right__less__imp__less,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le6747313008572928689nteger @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_2583_mult__right__less__imp__less,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_2584_mult__right__less__imp__less,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_2585_mult__right__less__imp__less,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ C )
       => ( ord_less_int @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_2586_mult__less__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ A @ B ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ B @ A ) ) ) ) ).

% mult_less_cancel_left
thf(fact_2587_mult__less__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ A @ B ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ B @ A ) ) ) ) ).

% mult_less_cancel_left
thf(fact_2588_mult__less__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ A @ B ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ B @ A ) ) ) ) ).

% mult_less_cancel_left
thf(fact_2589_mult__strict__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ C @ D )
       => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono
thf(fact_2590_mult__strict__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ C @ D )
       => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono
thf(fact_2591_mult__strict__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ C @ D )
       => ( ( ord_less_rat @ zero_zero_rat @ B )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
           => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono
thf(fact_2592_mult__strict__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ( ord_less_nat @ zero_zero_nat @ B )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono
thf(fact_2593_mult__strict__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ( ord_less_int @ zero_zero_int @ B )
         => ( ( ord_less_eq_int @ zero_zero_int @ C )
           => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono
thf(fact_2594_mult__left__less__imp__less,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le5570908160329646204atural @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_2595_mult__left__less__imp__less,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le6747313008572928689nteger @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_2596_mult__left__less__imp__less,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_2597_mult__left__less__imp__less,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_2598_mult__left__less__imp__less,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ C )
       => ( ord_less_int @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_2599_mult__le__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ A @ B ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ B @ A ) ) ) ) ).

% mult_le_cancel_right
thf(fact_2600_mult__le__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ A @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ B @ A ) ) ) ) ).

% mult_le_cancel_right
thf(fact_2601_mult__le__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ A @ B ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ B @ A ) ) ) ) ).

% mult_le_cancel_right
thf(fact_2602_mult__le__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ A @ B ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ B @ A ) ) ) ) ).

% mult_le_cancel_left
thf(fact_2603_mult__le__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ A @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ B @ A ) ) ) ) ).

% mult_le_cancel_left
thf(fact_2604_mult__le__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ A @ B ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ B @ A ) ) ) ) ).

% mult_le_cancel_left
thf(fact_2605_sum__squares__ge__zero,axiom,
    ! [X: code_integer,Y3: code_integer] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ X @ X ) @ ( times_3573771949741848930nteger @ Y3 @ Y3 ) ) ) ).

% sum_squares_ge_zero
thf(fact_2606_sum__squares__ge__zero,axiom,
    ! [X: rat,Y3: rat] : ( ord_less_eq_rat @ zero_zero_rat @ ( plus_plus_rat @ ( times_times_rat @ X @ X ) @ ( times_times_rat @ Y3 @ Y3 ) ) ) ).

% sum_squares_ge_zero
thf(fact_2607_sum__squares__ge__zero,axiom,
    ! [X: int,Y3: int] : ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ ( times_times_int @ X @ X ) @ ( times_times_int @ Y3 @ Y3 ) ) ) ).

% sum_squares_ge_zero
thf(fact_2608_sum__squares__le__zero__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ X @ X ) @ ( times_3573771949741848930nteger @ Y3 @ Y3 ) ) @ zero_z3403309356797280102nteger )
      = ( ( X = zero_z3403309356797280102nteger )
        & ( Y3 = zero_z3403309356797280102nteger ) ) ) ).

% sum_squares_le_zero_iff
thf(fact_2609_sum__squares__le__zero__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ ( times_times_rat @ X @ X ) @ ( times_times_rat @ Y3 @ Y3 ) ) @ zero_zero_rat )
      = ( ( X = zero_zero_rat )
        & ( Y3 = zero_zero_rat ) ) ) ).

% sum_squares_le_zero_iff
thf(fact_2610_sum__squares__le__zero__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ X @ X ) @ ( times_times_int @ Y3 @ Y3 ) ) @ zero_zero_int )
      = ( ( X = zero_zero_int )
        & ( Y3 = zero_zero_int ) ) ) ).

% sum_squares_le_zero_iff
thf(fact_2611_mult__left__le__one__le,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y3 )
       => ( ( ord_le3102999989581377725nteger @ Y3 @ one_one_Code_integer )
         => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ Y3 @ X ) @ X ) ) ) ) ).

% mult_left_le_one_le
thf(fact_2612_mult__left__le__one__le,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
       => ( ( ord_less_eq_rat @ Y3 @ one_one_rat )
         => ( ord_less_eq_rat @ ( times_times_rat @ Y3 @ X ) @ X ) ) ) ) ).

% mult_left_le_one_le
thf(fact_2613_mult__left__le__one__le,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
       => ( ( ord_less_eq_int @ Y3 @ one_one_int )
         => ( ord_less_eq_int @ ( times_times_int @ Y3 @ X ) @ X ) ) ) ) ).

% mult_left_le_one_le
thf(fact_2614_mult__right__le__one__le,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y3 )
       => ( ( ord_le3102999989581377725nteger @ Y3 @ one_one_Code_integer )
         => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ X @ Y3 ) @ X ) ) ) ) ).

% mult_right_le_one_le
thf(fact_2615_mult__right__le__one__le,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
       => ( ( ord_less_eq_rat @ Y3 @ one_one_rat )
         => ( ord_less_eq_rat @ ( times_times_rat @ X @ Y3 ) @ X ) ) ) ) ).

% mult_right_le_one_le
thf(fact_2616_mult__right__le__one__le,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
       => ( ( ord_less_eq_int @ Y3 @ one_one_int )
         => ( ord_less_eq_int @ ( times_times_int @ X @ Y3 ) @ X ) ) ) ) ).

% mult_right_le_one_le
thf(fact_2617_mult__le__one,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ one_one_Code_natural )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ( ord_le1926595141338095240atural @ B @ one_one_Code_natural )
         => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ B ) @ one_one_Code_natural ) ) ) ) ).

% mult_le_one
thf(fact_2618_mult__le__one,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ( ord_le3102999989581377725nteger @ B @ one_one_Code_integer )
         => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ B ) @ one_one_Code_integer ) ) ) ) ).

% mult_le_one
thf(fact_2619_mult__le__one,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ one_one_rat )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ( ord_less_eq_rat @ B @ one_one_rat )
         => ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ one_one_rat ) ) ) ) ).

% mult_le_one
thf(fact_2620_mult__le__one,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ one_one_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ( ord_less_eq_nat @ B @ one_one_nat )
         => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ one_one_nat ) ) ) ) ).

% mult_le_one
thf(fact_2621_mult__le__one,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ one_one_int )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ( ord_less_eq_int @ B @ one_one_int )
         => ( ord_less_eq_int @ ( times_times_int @ A @ B ) @ one_one_int ) ) ) ) ).

% mult_le_one
thf(fact_2622_mult__left__le,axiom,
    ! [C: code_natural,A: code_natural] :
      ( ( ord_le1926595141338095240atural @ C @ one_one_Code_natural )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_2623_mult__left__le,axiom,
    ! [C: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ C @ one_one_Code_integer )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_2624_mult__left__le,axiom,
    ! [C: rat,A: rat] :
      ( ( ord_less_eq_rat @ C @ one_one_rat )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_2625_mult__left__le,axiom,
    ! [C: nat,A: nat] :
      ( ( ord_less_eq_nat @ C @ one_one_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_2626_mult__left__le,axiom,
    ! [C: int,A: int] :
      ( ( ord_less_eq_int @ C @ one_one_int )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_2627_not__sum__squares__lt__zero,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ X @ X ) @ ( times_3573771949741848930nteger @ Y3 @ Y3 ) ) @ zero_z3403309356797280102nteger ) ).

% not_sum_squares_lt_zero
thf(fact_2628_not__sum__squares__lt__zero,axiom,
    ! [X: rat,Y3: rat] :
      ~ ( ord_less_rat @ ( plus_plus_rat @ ( times_times_rat @ X @ X ) @ ( times_times_rat @ Y3 @ Y3 ) ) @ zero_zero_rat ) ).

% not_sum_squares_lt_zero
thf(fact_2629_not__sum__squares__lt__zero,axiom,
    ! [X: int,Y3: int] :
      ~ ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ X @ X ) @ ( times_times_int @ Y3 @ Y3 ) ) @ zero_zero_int ) ).

% not_sum_squares_lt_zero
thf(fact_2630_sum__squares__gt__zero__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ X @ X ) @ ( times_3573771949741848930nteger @ Y3 @ Y3 ) ) )
      = ( ( X != zero_z3403309356797280102nteger )
        | ( Y3 != zero_z3403309356797280102nteger ) ) ) ).

% sum_squares_gt_zero_iff
thf(fact_2631_sum__squares__gt__zero__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ ( times_times_rat @ X @ X ) @ ( times_times_rat @ Y3 @ Y3 ) ) )
      = ( ( X != zero_zero_rat )
        | ( Y3 != zero_zero_rat ) ) ) ).

% sum_squares_gt_zero_iff
thf(fact_2632_sum__squares__gt__zero__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ ( times_times_int @ X @ X ) @ ( times_times_int @ Y3 @ Y3 ) ) )
      = ( ( X != zero_zero_int )
        | ( Y3 != zero_zero_int ) ) ) ).

% sum_squares_gt_zero_iff
thf(fact_2633_le__add__iff2,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( ord_le3102999989581377725nteger @ C @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ B @ A ) @ E ) @ D ) ) ) ).

% le_add_iff2
thf(fact_2634_le__add__iff2,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C ) @ ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( ord_less_eq_rat @ C @ ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ B @ A ) @ E ) @ D ) ) ) ).

% le_add_iff2
thf(fact_2635_le__add__iff2,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ A @ E ) @ C ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( ord_less_eq_int @ C @ ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ B @ A ) @ E ) @ D ) ) ) ).

% le_add_iff2
thf(fact_2636_le__add__iff1,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ E ) @ C ) @ D ) ) ).

% le_add_iff1
thf(fact_2637_le__add__iff1,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C ) @ ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( ord_less_eq_rat @ ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ E ) @ C ) @ D ) ) ).

% le_add_iff1
thf(fact_2638_le__add__iff1,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ A @ E ) @ C ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ A @ B ) @ E ) @ C ) @ D ) ) ).

% le_add_iff1
thf(fact_2639_less__add__iff2,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( ord_le6747313008572928689nteger @ C @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ B @ A ) @ E ) @ D ) ) ) ).

% less_add_iff2
thf(fact_2640_less__add__iff2,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C ) @ ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( ord_less_rat @ C @ ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ B @ A ) @ E ) @ D ) ) ) ).

% less_add_iff2
thf(fact_2641_less__add__iff2,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ A @ E ) @ C ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( ord_less_int @ C @ ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ B @ A ) @ E ) @ D ) ) ) ).

% less_add_iff2
thf(fact_2642_less__add__iff1,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ E ) @ C ) @ D ) ) ).

% less_add_iff1
thf(fact_2643_less__add__iff1,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C ) @ ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( ord_less_rat @ ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ E ) @ C ) @ D ) ) ).

% less_add_iff1
thf(fact_2644_less__add__iff1,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ A @ E ) @ C ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ A @ B ) @ E ) @ C ) @ D ) ) ).

% less_add_iff1
thf(fact_2645_square__diff__one__factored,axiom,
    ! [X: int] :
      ( ( minus_minus_int @ ( times_times_int @ X @ X ) @ one_one_int )
      = ( times_times_int @ ( plus_plus_int @ X @ one_one_int ) @ ( minus_minus_int @ X @ one_one_int ) ) ) ).

% square_diff_one_factored
thf(fact_2646_square__diff__one__factored,axiom,
    ! [X: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ X @ X ) @ one_one_Code_integer )
      = ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ X @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ X @ one_one_Code_integer ) ) ) ).

% square_diff_one_factored
thf(fact_2647_square__diff__one__factored,axiom,
    ! [X: rat] :
      ( ( minus_minus_rat @ ( times_times_rat @ X @ X ) @ one_one_rat )
      = ( times_times_rat @ ( plus_plus_rat @ X @ one_one_rat ) @ ( minus_minus_rat @ X @ one_one_rat ) ) ) ).

% square_diff_one_factored
thf(fact_2648_abs__eq__mult,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
          | ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) )
        & ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
          | ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger ) ) )
     => ( ( abs_abs_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) )
        = ( times_3573771949741848930nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) ) ).

% abs_eq_mult
thf(fact_2649_abs__eq__mult,axiom,
    ! [A: rat,B: rat] :
      ( ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          | ( ord_less_eq_rat @ A @ zero_zero_rat ) )
        & ( ( ord_less_eq_rat @ zero_zero_rat @ B )
          | ( ord_less_eq_rat @ B @ zero_zero_rat ) ) )
     => ( ( abs_abs_rat @ ( times_times_rat @ A @ B ) )
        = ( times_times_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ) ).

% abs_eq_mult
thf(fact_2650_abs__eq__mult,axiom,
    ! [A: int,B: int] :
      ( ( ( ( ord_less_eq_int @ zero_zero_int @ A )
          | ( ord_less_eq_int @ A @ zero_zero_int ) )
        & ( ( ord_less_eq_int @ zero_zero_int @ B )
          | ( ord_less_eq_int @ B @ zero_zero_int ) ) )
     => ( ( abs_abs_int @ ( times_times_int @ A @ B ) )
        = ( times_times_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) ) ).

% abs_eq_mult
thf(fact_2651_abs__mult__pos,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X )
     => ( ( times_3573771949741848930nteger @ ( abs_abs_Code_integer @ Y3 ) @ X )
        = ( abs_abs_Code_integer @ ( times_3573771949741848930nteger @ Y3 @ X ) ) ) ) ).

% abs_mult_pos
thf(fact_2652_abs__mult__pos,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X )
     => ( ( times_times_rat @ ( abs_abs_rat @ Y3 ) @ X )
        = ( abs_abs_rat @ ( times_times_rat @ Y3 @ X ) ) ) ) ).

% abs_mult_pos
thf(fact_2653_abs__mult__pos,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( times_times_int @ ( abs_abs_int @ Y3 ) @ X )
        = ( abs_abs_int @ ( times_times_int @ Y3 @ X ) ) ) ) ).

% abs_mult_pos
thf(fact_2654_power__gt1__lemma,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ord_le5570908160329646204atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ A @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_2655_power__gt1__lemma,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ A @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_2656_power__gt1__lemma,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ord_less_rat @ one_one_rat @ ( times_times_rat @ A @ ( power_power_rat @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_2657_power__gt1__lemma,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ord_less_nat @ one_one_nat @ ( times_times_nat @ A @ ( power_power_nat @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_2658_power__gt1__lemma,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ord_less_int @ one_one_int @ ( times_times_int @ A @ ( power_power_int @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_2659_power__less__power__Suc,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ N ) @ ( times_2397367101498566445atural @ A @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_2660_power__less__power__Suc,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( times_3573771949741848930nteger @ A @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_2661_power__less__power__Suc,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ord_less_rat @ ( power_power_rat @ A @ N ) @ ( times_times_rat @ A @ ( power_power_rat @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_2662_power__less__power__Suc,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( times_times_nat @ A @ ( power_power_nat @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_2663_power__less__power__Suc,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ord_less_int @ ( power_power_int @ A @ N ) @ ( times_times_int @ A @ ( power_power_int @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_2664_power__minus,axiom,
    ! [A: int,N: nat] :
      ( ( power_power_int @ ( uminus_uminus_int @ A ) @ N )
      = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( power_power_int @ A @ N ) ) ) ).

% power_minus
thf(fact_2665_power__minus,axiom,
    ! [A: code_integer,N: nat] :
      ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ A ) @ N )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% power_minus
thf(fact_2666_power__minus,axiom,
    ! [A: rat,N: nat] :
      ( ( power_power_rat @ ( uminus_uminus_rat @ A ) @ N )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( power_power_rat @ A @ N ) ) ) ).

% power_minus
thf(fact_2667_mult__eq__if,axiom,
    ( times_times_nat
    = ( ^ [M5: nat,N5: nat] : ( if_nat @ ( M5 = zero_zero_nat ) @ zero_zero_nat @ ( plus_plus_nat @ N5 @ ( times_times_nat @ ( minus_minus_nat @ M5 @ one_one_nat ) @ N5 ) ) ) ) ) ).

% mult_eq_if
thf(fact_2668_pos__zmult__eq__1__iff,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ zero_zero_int @ M )
     => ( ( ( times_times_int @ M @ N )
          = one_one_int )
        = ( ( M = one_one_int )
          & ( N = one_one_int ) ) ) ) ).

% pos_zmult_eq_1_iff
thf(fact_2669_diff__nat__eq__if,axiom,
    ! [Z4: int,Z: int] :
      ( ( ( ord_less_int @ Z4 @ zero_zero_int )
       => ( ( minus_minus_nat @ ( nat2 @ Z ) @ ( nat2 @ Z4 ) )
          = ( nat2 @ Z ) ) )
      & ( ~ ( ord_less_int @ Z4 @ zero_zero_int )
       => ( ( minus_minus_nat @ ( nat2 @ Z ) @ ( nat2 @ Z4 ) )
          = ( if_nat @ ( ord_less_int @ ( minus_minus_int @ Z @ Z4 ) @ zero_zero_int ) @ zero_zero_nat @ ( nat2 @ ( minus_minus_int @ Z @ Z4 ) ) ) ) ) ) ).

% diff_nat_eq_if
thf(fact_2670_frac__eq,axiom,
    ! [X: rat] :
      ( ( ( archimedean_frac_rat @ X )
        = X )
      = ( ( ord_less_eq_rat @ zero_zero_rat @ X )
        & ( ord_less_rat @ X @ one_one_rat ) ) ) ).

% frac_eq
thf(fact_2671_nat__plus__as__int,axiom,
    ( plus_plus_nat
    = ( ^ [A4: nat,B4: nat] : ( nat2 @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ) ).

% nat_plus_as_int
thf(fact_2672_frac__add,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ( ord_less_rat @ ( plus_plus_rat @ ( archimedean_frac_rat @ X ) @ ( archimedean_frac_rat @ Y3 ) ) @ one_one_rat )
       => ( ( archimedean_frac_rat @ ( plus_plus_rat @ X @ Y3 ) )
          = ( plus_plus_rat @ ( archimedean_frac_rat @ X ) @ ( archimedean_frac_rat @ Y3 ) ) ) )
      & ( ~ ( ord_less_rat @ ( plus_plus_rat @ ( archimedean_frac_rat @ X ) @ ( archimedean_frac_rat @ Y3 ) ) @ one_one_rat )
       => ( ( archimedean_frac_rat @ ( plus_plus_rat @ X @ Y3 ) )
          = ( minus_minus_rat @ ( plus_plus_rat @ ( archimedean_frac_rat @ X ) @ ( archimedean_frac_rat @ Y3 ) ) @ one_one_rat ) ) ) ) ).

% frac_add
thf(fact_2673_of__int__pos,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ zero_zero_int @ Z )
     => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( ring_18347121197199848620nteger @ Z ) ) ) ).

% of_int_pos
thf(fact_2674_of__int__pos,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ zero_zero_int @ Z )
     => ( ord_less_rat @ zero_zero_rat @ ( ring_1_of_int_rat @ Z ) ) ) ).

% of_int_pos
thf(fact_2675_of__int__pos,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ zero_zero_int @ Z )
     => ( ord_less_int @ zero_zero_int @ ( ring_1_of_int_int @ Z ) ) ) ).

% of_int_pos
thf(fact_2676_of__int__leD,axiom,
    ! [N: int,X: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( ring_18347121197199848620nteger @ N ) ) @ X )
     => ( ( N = zero_zero_int )
        | ( ord_le3102999989581377725nteger @ one_one_Code_integer @ X ) ) ) ).

% of_int_leD
thf(fact_2677_of__int__leD,axiom,
    ! [N: int,X: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ ( ring_1_of_int_rat @ N ) ) @ X )
     => ( ( N = zero_zero_int )
        | ( ord_less_eq_rat @ one_one_rat @ X ) ) ) ).

% of_int_leD
thf(fact_2678_of__int__leD,axiom,
    ! [N: int,X: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ ( ring_1_of_int_int @ N ) ) @ X )
     => ( ( N = zero_zero_int )
        | ( ord_less_eq_int @ one_one_int @ X ) ) ) ).

% of_int_leD
thf(fact_2679_of__int__lessD,axiom,
    ! [N: int,X: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ ( ring_18347121197199848620nteger @ N ) ) @ X )
     => ( ( N = zero_zero_int )
        | ( ord_le6747313008572928689nteger @ one_one_Code_integer @ X ) ) ) ).

% of_int_lessD
thf(fact_2680_of__int__lessD,axiom,
    ! [N: int,X: rat] :
      ( ( ord_less_rat @ ( abs_abs_rat @ ( ring_1_of_int_rat @ N ) ) @ X )
     => ( ( N = zero_zero_int )
        | ( ord_less_rat @ one_one_rat @ X ) ) ) ).

% of_int_lessD
thf(fact_2681_of__int__lessD,axiom,
    ! [N: int,X: int] :
      ( ( ord_less_int @ ( abs_abs_int @ ( ring_1_of_int_int @ N ) ) @ X )
     => ( ( N = zero_zero_int )
        | ( ord_less_int @ one_one_int @ X ) ) ) ).

% of_int_lessD
thf(fact_2682_of__nat__less__of__int__iff,axiom,
    ! [N: nat,X: int] :
      ( ( ord_less_rat @ ( semiri681578069525770553at_rat @ N ) @ ( ring_1_of_int_rat @ X ) )
      = ( ord_less_int @ ( semiri1314217659103216013at_int @ N ) @ X ) ) ).

% of_nat_less_of_int_iff
thf(fact_2683_of__nat__less__of__int__iff,axiom,
    ! [N: nat,X: int] :
      ( ( ord_less_int @ ( semiri1314217659103216013at_int @ N ) @ ( ring_1_of_int_int @ X ) )
      = ( ord_less_int @ ( semiri1314217659103216013at_int @ N ) @ X ) ) ).

% of_nat_less_of_int_iff
thf(fact_2684_split__nat,axiom,
    ! [P: nat > $o,I: int] :
      ( ( P @ ( nat2 @ I ) )
      = ( ! [N5: nat] :
            ( ( I
              = ( semiri1314217659103216013at_int @ N5 ) )
           => ( P @ N5 ) )
        & ( ( ord_less_int @ I @ zero_zero_int )
         => ( P @ zero_zero_nat ) ) ) ) ).

% split_nat
thf(fact_2685_nat__less__iff,axiom,
    ! [W: int,M: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ W )
     => ( ( ord_less_nat @ ( nat2 @ W ) @ M )
        = ( ord_less_int @ W @ ( semiri1314217659103216013at_int @ M ) ) ) ) ).

% nat_less_iff
thf(fact_2686_mult__le__cancel__left1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ C @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ B ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ B @ one_one_Code_integer ) ) ) ) ).

% mult_le_cancel_left1
thf(fact_2687_mult__le__cancel__left1,axiom,
    ! [C: rat,B: rat] :
      ( ( ord_less_eq_rat @ C @ ( times_times_rat @ C @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ one_one_rat @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ B @ one_one_rat ) ) ) ) ).

% mult_le_cancel_left1
thf(fact_2688_mult__le__cancel__left1,axiom,
    ! [C: int,B: int] :
      ( ( ord_less_eq_int @ C @ ( times_times_int @ C @ B ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ one_one_int @ B ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ B @ one_one_int ) ) ) ) ).

% mult_le_cancel_left1
thf(fact_2689_mult__le__cancel__left2,axiom,
    ! [C: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ C )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ A ) ) ) ) ).

% mult_le_cancel_left2
thf(fact_2690_mult__le__cancel__left2,axiom,
    ! [C: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ C )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ A @ one_one_rat ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ one_one_rat @ A ) ) ) ) ).

% mult_le_cancel_left2
thf(fact_2691_mult__le__cancel__left2,axiom,
    ! [C: int,A: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ C )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ A @ one_one_int ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ one_one_int @ A ) ) ) ) ).

% mult_le_cancel_left2
thf(fact_2692_mult__le__cancel__right1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ C @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ B ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ B @ one_one_Code_integer ) ) ) ) ).

% mult_le_cancel_right1
thf(fact_2693_mult__le__cancel__right1,axiom,
    ! [C: rat,B: rat] :
      ( ( ord_less_eq_rat @ C @ ( times_times_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ one_one_rat @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ B @ one_one_rat ) ) ) ) ).

% mult_le_cancel_right1
thf(fact_2694_mult__le__cancel__right1,axiom,
    ! [C: int,B: int] :
      ( ( ord_less_eq_int @ C @ ( times_times_int @ B @ C ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ one_one_int @ B ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ B @ one_one_int ) ) ) ) ).

% mult_le_cancel_right1
thf(fact_2695_mult__le__cancel__right2,axiom,
    ! [A: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ C )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ A ) ) ) ) ).

% mult_le_cancel_right2
thf(fact_2696_mult__le__cancel__right2,axiom,
    ! [A: rat,C: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ C )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ A @ one_one_rat ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ one_one_rat @ A ) ) ) ) ).

% mult_le_cancel_right2
thf(fact_2697_mult__le__cancel__right2,axiom,
    ! [A: int,C: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ C )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ A @ one_one_int ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ one_one_int @ A ) ) ) ) ).

% mult_le_cancel_right2
thf(fact_2698_mult__less__cancel__left1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ C @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ B ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ B @ one_one_Code_integer ) ) ) ) ).

% mult_less_cancel_left1
thf(fact_2699_mult__less__cancel__left1,axiom,
    ! [C: rat,B: rat] :
      ( ( ord_less_rat @ C @ ( times_times_rat @ C @ B ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ one_one_rat @ B ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ B @ one_one_rat ) ) ) ) ).

% mult_less_cancel_left1
thf(fact_2700_mult__less__cancel__left1,axiom,
    ! [C: int,B: int] :
      ( ( ord_less_int @ C @ ( times_times_int @ C @ B ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ one_one_int @ B ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ B @ one_one_int ) ) ) ) ).

% mult_less_cancel_left1
thf(fact_2701_mult__less__cancel__left2,axiom,
    ! [C: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ C )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ A @ one_one_Code_integer ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A ) ) ) ) ).

% mult_less_cancel_left2
thf(fact_2702_mult__less__cancel__left2,axiom,
    ! [C: rat,A: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ C )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ A @ one_one_rat ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ one_one_rat @ A ) ) ) ) ).

% mult_less_cancel_left2
thf(fact_2703_mult__less__cancel__left2,axiom,
    ! [C: int,A: int] :
      ( ( ord_less_int @ ( times_times_int @ C @ A ) @ C )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ A @ one_one_int ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ one_one_int @ A ) ) ) ) ).

% mult_less_cancel_left2
thf(fact_2704_mult__less__cancel__right1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ C @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ B ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ B @ one_one_Code_integer ) ) ) ) ).

% mult_less_cancel_right1
thf(fact_2705_mult__less__cancel__right1,axiom,
    ! [C: rat,B: rat] :
      ( ( ord_less_rat @ C @ ( times_times_rat @ B @ C ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ one_one_rat @ B ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ B @ one_one_rat ) ) ) ) ).

% mult_less_cancel_right1
thf(fact_2706_mult__less__cancel__right1,axiom,
    ! [C: int,B: int] :
      ( ( ord_less_int @ C @ ( times_times_int @ B @ C ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ one_one_int @ B ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ B @ one_one_int ) ) ) ) ).

% mult_less_cancel_right1
thf(fact_2707_mult__less__cancel__right2,axiom,
    ! [A: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ C )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ A @ one_one_Code_integer ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A ) ) ) ) ).

% mult_less_cancel_right2
thf(fact_2708_mult__less__cancel__right2,axiom,
    ! [A: rat,C: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ A @ C ) @ C )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ A @ one_one_rat ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ one_one_rat @ A ) ) ) ) ).

% mult_less_cancel_right2
thf(fact_2709_mult__less__cancel__right2,axiom,
    ! [A: int,C: int] :
      ( ( ord_less_int @ ( times_times_int @ A @ C ) @ C )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ A @ one_one_int ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ one_one_int @ A ) ) ) ) ).

% mult_less_cancel_right2
thf(fact_2710_convex__bound__le,axiom,
    ! [X: code_integer,A: code_integer,Y3: code_integer,U: code_integer,V: code_integer] :
      ( ( ord_le3102999989581377725nteger @ X @ A )
     => ( ( ord_le3102999989581377725nteger @ Y3 @ A )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ U )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ V )
           => ( ( ( plus_p5714425477246183910nteger @ U @ V )
                = one_one_Code_integer )
             => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ U @ X ) @ ( times_3573771949741848930nteger @ V @ Y3 ) ) @ A ) ) ) ) ) ) ).

% convex_bound_le
thf(fact_2711_convex__bound__le,axiom,
    ! [X: rat,A: rat,Y3: rat,U: rat,V: rat] :
      ( ( ord_less_eq_rat @ X @ A )
     => ( ( ord_less_eq_rat @ Y3 @ A )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ U )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ V )
           => ( ( ( plus_plus_rat @ U @ V )
                = one_one_rat )
             => ( ord_less_eq_rat @ ( plus_plus_rat @ ( times_times_rat @ U @ X ) @ ( times_times_rat @ V @ Y3 ) ) @ A ) ) ) ) ) ) ).

% convex_bound_le
thf(fact_2712_convex__bound__le,axiom,
    ! [X: int,A: int,Y3: int,U: int,V: int] :
      ( ( ord_less_eq_int @ X @ A )
     => ( ( ord_less_eq_int @ Y3 @ A )
       => ( ( ord_less_eq_int @ zero_zero_int @ U )
         => ( ( ord_less_eq_int @ zero_zero_int @ V )
           => ( ( ( plus_plus_int @ U @ V )
                = one_one_int )
             => ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ U @ X ) @ ( times_times_int @ V @ Y3 ) ) @ A ) ) ) ) ) ) ).

% convex_bound_le
thf(fact_2713_power__Suc__less,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ A @ one_one_Code_natural )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ ( power_7079662738309270450atural @ A @ N ) ) @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ).

% power_Suc_less
thf(fact_2714_power__Suc__less,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ A @ one_one_Code_integer )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ ( power_8256067586552552935nteger @ A @ N ) ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ).

% power_Suc_less
thf(fact_2715_power__Suc__less,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ A @ one_one_rat )
       => ( ord_less_rat @ ( times_times_rat @ A @ ( power_power_rat @ A @ N ) ) @ ( power_power_rat @ A @ N ) ) ) ) ).

% power_Suc_less
thf(fact_2716_power__Suc__less,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ A @ one_one_nat )
       => ( ord_less_nat @ ( times_times_nat @ A @ ( power_power_nat @ A @ N ) ) @ ( power_power_nat @ A @ N ) ) ) ) ).

% power_Suc_less
thf(fact_2717_power__Suc__less,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ A @ one_one_int )
       => ( ord_less_int @ ( times_times_int @ A @ ( power_power_int @ A @ N ) ) @ ( power_power_int @ A @ N ) ) ) ) ).

% power_Suc_less
thf(fact_2718_power__eq__if,axiom,
    ( power_7079662738309270450atural
    = ( ^ [P5: code_natural,M5: nat] : ( if_Code_natural @ ( M5 = zero_zero_nat ) @ one_one_Code_natural @ ( times_2397367101498566445atural @ P5 @ ( power_7079662738309270450atural @ P5 @ ( minus_minus_nat @ M5 @ one_one_nat ) ) ) ) ) ) ).

% power_eq_if
thf(fact_2719_power__eq__if,axiom,
    ( power_power_nat
    = ( ^ [P5: nat,M5: nat] : ( if_nat @ ( M5 = zero_zero_nat ) @ one_one_nat @ ( times_times_nat @ P5 @ ( power_power_nat @ P5 @ ( minus_minus_nat @ M5 @ one_one_nat ) ) ) ) ) ) ).

% power_eq_if
thf(fact_2720_power__eq__if,axiom,
    ( power_power_int
    = ( ^ [P5: int,M5: nat] : ( if_int @ ( M5 = zero_zero_nat ) @ one_one_int @ ( times_times_int @ P5 @ ( power_power_int @ P5 @ ( minus_minus_nat @ M5 @ one_one_nat ) ) ) ) ) ) ).

% power_eq_if
thf(fact_2721_power__eq__if,axiom,
    ( power_8256067586552552935nteger
    = ( ^ [P5: code_integer,M5: nat] : ( if_Code_integer @ ( M5 = zero_zero_nat ) @ one_one_Code_integer @ ( times_3573771949741848930nteger @ P5 @ ( power_8256067586552552935nteger @ P5 @ ( minus_minus_nat @ M5 @ one_one_nat ) ) ) ) ) ) ).

% power_eq_if
thf(fact_2722_power__eq__if,axiom,
    ( power_power_rat
    = ( ^ [P5: rat,M5: nat] : ( if_rat @ ( M5 = zero_zero_nat ) @ one_one_rat @ ( times_times_rat @ P5 @ ( power_power_rat @ P5 @ ( minus_minus_nat @ M5 @ one_one_nat ) ) ) ) ) ) ).

% power_eq_if
thf(fact_2723_power__minus__mult,axiom,
    ! [N: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_nat @ ( power_power_nat @ A @ ( minus_minus_nat @ N @ one_one_nat ) ) @ A )
        = ( power_power_nat @ A @ N ) ) ) ).

% power_minus_mult
thf(fact_2724_power__minus__mult,axiom,
    ! [N: nat,A: int] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_int @ ( power_power_int @ A @ ( minus_minus_nat @ N @ one_one_nat ) ) @ A )
        = ( power_power_int @ A @ N ) ) ) ).

% power_minus_mult
thf(fact_2725_power__minus__mult,axiom,
    ! [N: nat,A: code_integer] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ A @ ( minus_minus_nat @ N @ one_one_nat ) ) @ A )
        = ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% power_minus_mult
thf(fact_2726_power__minus__mult,axiom,
    ! [N: nat,A: rat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_rat @ ( power_power_rat @ A @ ( minus_minus_nat @ N @ one_one_nat ) ) @ A )
        = ( power_power_rat @ A @ N ) ) ) ).

% power_minus_mult
thf(fact_2727_zmult__zless__mono2__lemma,axiom,
    ! [I: int,J: int,K: nat] :
      ( ( ord_less_int @ I @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ K ) @ I ) @ ( times_times_int @ ( semiri1314217659103216013at_int @ K ) @ J ) ) ) ) ).

% zmult_zless_mono2_lemma
thf(fact_2728_frac__neg,axiom,
    ! [X: rat] :
      ( ( ( member_rat @ X @ ring_1_Ints_rat )
       => ( ( archimedean_frac_rat @ ( uminus_uminus_rat @ X ) )
          = zero_zero_rat ) )
      & ( ~ ( member_rat @ X @ ring_1_Ints_rat )
       => ( ( archimedean_frac_rat @ ( uminus_uminus_rat @ X ) )
          = ( minus_minus_rat @ one_one_rat @ ( archimedean_frac_rat @ X ) ) ) ) ) ).

% frac_neg
thf(fact_2729_nat__mult__le__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% nat_mult_le_cancel_disj
thf(fact_2730_nat__mult__less__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M @ N ) ) ) ).

% nat_mult_less_cancel_disj
thf(fact_2731_nat__less__add__iff1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_less_add_iff1
thf(fact_2732_nat__less__add__iff2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_less_add_iff2
thf(fact_2733_mult__le__cancel__iff1,axiom,
    ! [Z: code_integer,X: code_integer,Y3: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ Z )
     => ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ X @ Z ) @ ( times_3573771949741848930nteger @ Y3 @ Z ) )
        = ( ord_le3102999989581377725nteger @ X @ Y3 ) ) ) ).

% mult_le_cancel_iff1
thf(fact_2734_mult__le__cancel__iff1,axiom,
    ! [Z: rat,X: rat,Y3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Z )
     => ( ( ord_less_eq_rat @ ( times_times_rat @ X @ Z ) @ ( times_times_rat @ Y3 @ Z ) )
        = ( ord_less_eq_rat @ X @ Y3 ) ) ) ).

% mult_le_cancel_iff1
thf(fact_2735_mult__le__cancel__iff1,axiom,
    ! [Z: int,X: int,Y3: int] :
      ( ( ord_less_int @ zero_zero_int @ Z )
     => ( ( ord_less_eq_int @ ( times_times_int @ X @ Z ) @ ( times_times_int @ Y3 @ Z ) )
        = ( ord_less_eq_int @ X @ Y3 ) ) ) ).

% mult_le_cancel_iff1
thf(fact_2736_mult__le__cancel__iff2,axiom,
    ! [Z: code_integer,X: code_integer,Y3: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ Z )
     => ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ Z @ X ) @ ( times_3573771949741848930nteger @ Z @ Y3 ) )
        = ( ord_le3102999989581377725nteger @ X @ Y3 ) ) ) ).

% mult_le_cancel_iff2
thf(fact_2737_mult__le__cancel__iff2,axiom,
    ! [Z: rat,X: rat,Y3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Z )
     => ( ( ord_less_eq_rat @ ( times_times_rat @ Z @ X ) @ ( times_times_rat @ Z @ Y3 ) )
        = ( ord_less_eq_rat @ X @ Y3 ) ) ) ).

% mult_le_cancel_iff2
thf(fact_2738_mult__le__cancel__iff2,axiom,
    ! [Z: int,X: int,Y3: int] :
      ( ( ord_less_int @ zero_zero_int @ Z )
     => ( ( ord_less_eq_int @ ( times_times_int @ Z @ X ) @ ( times_times_int @ Z @ Y3 ) )
        = ( ord_less_eq_int @ X @ Y3 ) ) ) ).

% mult_le_cancel_iff2
thf(fact_2739_nat__eq__add__iff1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M )
          = ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M )
          = N ) ) ) ).

% nat_eq_add_iff1
thf(fact_2740_nat__eq__add__iff2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M )
          = ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( M
          = ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_eq_add_iff2
thf(fact_2741_nat__le__add__iff1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_le_add_iff1
thf(fact_2742_nat__le__add__iff2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_eq_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_le_add_iff2
thf(fact_2743_nat__mult__eq__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ K @ M )
        = ( times_times_nat @ K @ N ) )
      = ( ( K = zero_zero_nat )
        | ( M = N ) ) ) ).

% nat_mult_eq_cancel_disj
thf(fact_2744_left__add__mult__distrib,axiom,
    ! [I: nat,U: nat,J: nat,K: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ K ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ I @ J ) @ U ) @ K ) ) ).

% left_add_mult_distrib
thf(fact_2745_nat__mult__less__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_nat @ M @ N ) ) ) ).

% nat_mult_less_cancel1
thf(fact_2746_nat__mult__eq__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ( times_times_nat @ K @ M )
          = ( times_times_nat @ K @ N ) )
        = ( M = N ) ) ) ).

% nat_mult_eq_cancel1
thf(fact_2747_mult__less__iff1,axiom,
    ! [Z: code_integer,X: code_integer,Y3: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ Z )
     => ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ X @ Z ) @ ( times_3573771949741848930nteger @ Y3 @ Z ) )
        = ( ord_le6747313008572928689nteger @ X @ Y3 ) ) ) ).

% mult_less_iff1
thf(fact_2748_mult__less__iff1,axiom,
    ! [Z: rat,X: rat,Y3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Z )
     => ( ( ord_less_rat @ ( times_times_rat @ X @ Z ) @ ( times_times_rat @ Y3 @ Z ) )
        = ( ord_less_rat @ X @ Y3 ) ) ) ).

% mult_less_iff1
thf(fact_2749_mult__less__iff1,axiom,
    ! [Z: int,X: int,Y3: int] :
      ( ( ord_less_int @ zero_zero_int @ Z )
     => ( ( ord_less_int @ ( times_times_int @ X @ Z ) @ ( times_times_int @ Y3 @ Z ) )
        = ( ord_less_int @ X @ Y3 ) ) ) ).

% mult_less_iff1
thf(fact_2750_nat__mult__le__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_eq_nat @ M @ N ) ) ) ).

% nat_mult_le_cancel1
thf(fact_2751_nat__diff__add__eq2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( minus_minus_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_diff_add_eq2
thf(fact_2752_nat__diff__add__eq1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_diff_add_eq1
thf(fact_2753_eucl__rel__int_Osimps,axiom,
    ( eucl_rel_int
    = ( ^ [A1: int,A22: int,A32: product_prod_int_int] :
          ( ? [K3: int] :
              ( ( A1 = K3 )
              & ( A22 = zero_zero_int )
              & ( A32
                = ( product_Pair_int_int @ zero_zero_int @ K3 ) ) )
          | ? [L4: int,K3: int,Q4: int] :
              ( ( A1 = K3 )
              & ( A22 = L4 )
              & ( A32
                = ( product_Pair_int_int @ Q4 @ zero_zero_int ) )
              & ( L4 != zero_zero_int )
              & ( K3
                = ( times_times_int @ Q4 @ L4 ) ) )
          | ? [R4: int,L4: int,K3: int,Q4: int] :
              ( ( A1 = K3 )
              & ( A22 = L4 )
              & ( A32
                = ( product_Pair_int_int @ Q4 @ R4 ) )
              & ( ( sgn_sgn_int @ R4 )
                = ( sgn_sgn_int @ L4 ) )
              & ( ord_less_int @ ( abs_abs_int @ R4 ) @ ( abs_abs_int @ L4 ) )
              & ( K3
                = ( plus_plus_int @ ( times_times_int @ Q4 @ L4 ) @ R4 ) ) ) ) ) ) ).

% eucl_rel_int.simps
thf(fact_2754_eucl__rel__int_Ocases,axiom,
    ! [A12: int,A23: int,A33: product_prod_int_int] :
      ( ( eucl_rel_int @ A12 @ A23 @ A33 )
     => ( ( ( A23 = zero_zero_int )
         => ( A33
           != ( product_Pair_int_int @ zero_zero_int @ A12 ) ) )
       => ( ! [Q3: int] :
              ( ( A33
                = ( product_Pair_int_int @ Q3 @ zero_zero_int ) )
             => ( ( A23 != zero_zero_int )
               => ( A12
                 != ( times_times_int @ Q3 @ A23 ) ) ) )
         => ~ ! [R2: int,Q3: int] :
                ( ( A33
                  = ( product_Pair_int_int @ Q3 @ R2 ) )
               => ( ( ( sgn_sgn_int @ R2 )
                    = ( sgn_sgn_int @ A23 ) )
                 => ( ( ord_less_int @ ( abs_abs_int @ R2 ) @ ( abs_abs_int @ A23 ) )
                   => ( A12
                     != ( plus_plus_int @ ( times_times_int @ Q3 @ A23 ) @ R2 ) ) ) ) ) ) ) ) ).

% eucl_rel_int.cases
thf(fact_2755_pochhammer__code,axiom,
    ( comm_s7406298101470620109atural
    = ( ^ [A4: code_natural,N5: nat] :
          ( if_Code_natural @ ( N5 = zero_zero_nat ) @ one_one_Code_natural
          @ ( set_fo9131927060563008058atural
            @ ^ [O: nat] : ( times_2397367101498566445atural @ ( plus_p4538020629002901425atural @ A4 @ ( semiri3763490453095760265atural @ O ) ) )
            @ zero_zero_nat
            @ ( minus_minus_nat @ N5 @ one_one_nat )
            @ one_one_Code_natural ) ) ) ) ).

% pochhammer_code
thf(fact_2756_pochhammer__code,axiom,
    ( comm_s8582702949713902594nteger
    = ( ^ [A4: code_integer,N5: nat] :
          ( if_Code_integer @ ( N5 = zero_zero_nat ) @ one_one_Code_integer
          @ ( set_fo1084959871951514735nteger
            @ ^ [O: nat] : ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A4 @ ( semiri4939895301339042750nteger @ O ) ) )
            @ zero_zero_nat
            @ ( minus_minus_nat @ N5 @ one_one_nat )
            @ one_one_Code_integer ) ) ) ) ).

% pochhammer_code
thf(fact_2757_pochhammer__code,axiom,
    ( comm_s4028243227959126397er_rat
    = ( ^ [A4: rat,N5: nat] :
          ( if_rat @ ( N5 = zero_zero_nat ) @ one_one_rat
          @ ( set_fo1949268297981939178at_rat
            @ ^ [O: nat] : ( times_times_rat @ ( plus_plus_rat @ A4 @ ( semiri681578069525770553at_rat @ O ) ) )
            @ zero_zero_nat
            @ ( minus_minus_nat @ N5 @ one_one_nat )
            @ one_one_rat ) ) ) ) ).

% pochhammer_code
thf(fact_2758_pochhammer__code,axiom,
    ( comm_s4660882817536571857er_int
    = ( ^ [A4: int,N5: nat] :
          ( if_int @ ( N5 = zero_zero_nat ) @ one_one_int
          @ ( set_fo2581907887559384638at_int
            @ ^ [O: nat] : ( times_times_int @ ( plus_plus_int @ A4 @ ( semiri1314217659103216013at_int @ O ) ) )
            @ zero_zero_nat
            @ ( minus_minus_nat @ N5 @ one_one_nat )
            @ one_one_int ) ) ) ) ).

% pochhammer_code
thf(fact_2759_pochhammer__code,axiom,
    ( comm_s4663373288045622133er_nat
    = ( ^ [A4: nat,N5: nat] :
          ( if_nat @ ( N5 = zero_zero_nat ) @ one_one_nat
          @ ( set_fo2584398358068434914at_nat
            @ ^ [O: nat] : ( times_times_nat @ ( plus_plus_nat @ A4 @ ( semiri1316708129612266289at_nat @ O ) ) )
            @ zero_zero_nat
            @ ( minus_minus_nat @ N5 @ one_one_nat )
            @ one_one_nat ) ) ) ) ).

% pochhammer_code
thf(fact_2760_less__eq__set__def,axiom,
    ( ord_le2077887516847798113at_nat
    = ( ^ [A6: set_se7855581050983116737at_nat,B6: set_se7855581050983116737at_nat] :
          ( ord_le5866676684937102012_nat_o
          @ ^ [X4: set_Pr1261947904930325089at_nat] : ( member2643936169264416010at_nat @ X4 @ A6 )
          @ ^ [X4: set_Pr1261947904930325089at_nat] : ( member2643936169264416010at_nat @ X4 @ B6 ) ) ) ) ).

% less_eq_set_def
thf(fact_2761_less__eq__set__def,axiom,
    ( ord_le483042692224249369nt_int
    = ( ^ [A6: set_se6260736226359567993nt_int,B6: set_se6260736226359567993nt_int] :
          ( ord_le8334417538754933252_int_o
          @ ^ [X4: set_Pr958786334691620121nt_int] : ( member2340774599025711042nt_int @ X4 @ A6 )
          @ ^ [X4: set_Pr958786334691620121nt_int] : ( member2340774599025711042nt_int @ X4 @ B6 ) ) ) ) ).

% less_eq_set_def
thf(fact_2762_less__eq__set__def,axiom,
    ( ord_le6893508408891458716et_nat
    = ( ^ [A6: set_set_nat,B6: set_set_nat] :
          ( ord_le3964352015994296041_nat_o
          @ ^ [X4: set_nat] : ( member_set_nat @ X4 @ A6 )
          @ ^ [X4: set_nat] : ( member_set_nat @ X4 @ B6 ) ) ) ) ).

% less_eq_set_def
thf(fact_2763_less__eq__set__def,axiom,
    ( ord_less_eq_set_int
    = ( ^ [A6: set_int,B6: set_int] :
          ( ord_less_eq_int_o
          @ ^ [X4: int] : ( member_int @ X4 @ A6 )
          @ ^ [X4: int] : ( member_int @ X4 @ B6 ) ) ) ) ).

% less_eq_set_def
thf(fact_2764_less__eq__set__def,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A6: set_nat,B6: set_nat] :
          ( ord_less_eq_nat_o
          @ ^ [X4: nat] : ( member_nat @ X4 @ A6 )
          @ ^ [X4: nat] : ( member_nat @ X4 @ B6 ) ) ) ) ).

% less_eq_set_def
thf(fact_2765_eucl__rel__int__remainderI,axiom,
    ! [R: int,L: int,K: int,Q2: int] :
      ( ( ( sgn_sgn_int @ R )
        = ( sgn_sgn_int @ L ) )
     => ( ( ord_less_int @ ( abs_abs_int @ R ) @ ( abs_abs_int @ L ) )
       => ( ( K
            = ( plus_plus_int @ ( times_times_int @ Q2 @ L ) @ R ) )
         => ( eucl_rel_int @ K @ L @ ( product_Pair_int_int @ Q2 @ R ) ) ) ) ) ).

% eucl_rel_int_remainderI
thf(fact_2766_eucl__rel__int__iff,axiom,
    ! [K: int,L: int,Q2: int,R: int] :
      ( ( eucl_rel_int @ K @ L @ ( product_Pair_int_int @ Q2 @ R ) )
      = ( ( K
          = ( plus_plus_int @ ( times_times_int @ L @ Q2 ) @ R ) )
        & ( ( ord_less_int @ zero_zero_int @ L )
         => ( ( ord_less_eq_int @ zero_zero_int @ R )
            & ( ord_less_int @ R @ L ) ) )
        & ( ~ ( ord_less_int @ zero_zero_int @ L )
         => ( ( ( ord_less_int @ L @ zero_zero_int )
             => ( ( ord_less_int @ L @ R )
                & ( ord_less_eq_int @ R @ zero_zero_int ) ) )
            & ( ~ ( ord_less_int @ L @ zero_zero_int )
             => ( Q2 = zero_zero_int ) ) ) ) ) ) ).

% eucl_rel_int_iff
thf(fact_2767_zminus1__lemma,axiom,
    ! [A: int,B: int,Q2: int,R: int] :
      ( ( eucl_rel_int @ A @ B @ ( product_Pair_int_int @ Q2 @ R ) )
     => ( ( B != zero_zero_int )
       => ( eucl_rel_int @ ( uminus_uminus_int @ A ) @ B @ ( product_Pair_int_int @ ( if_int @ ( R = zero_zero_int ) @ ( uminus_uminus_int @ Q2 ) @ ( minus_minus_int @ ( uminus_uminus_int @ Q2 ) @ one_one_int ) ) @ ( if_int @ ( R = zero_zero_int ) @ zero_zero_int @ ( minus_minus_int @ B @ R ) ) ) ) ) ) ).

% zminus1_lemma
thf(fact_2768_pochhammer__minus_H,axiom,
    ! [B: code_integer,K: nat] :
      ( ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ B @ ( semiri4939895301339042750nteger @ K ) ) @ one_one_Code_integer ) @ K )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ K ) @ ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ B ) @ K ) ) ) ).

% pochhammer_minus'
thf(fact_2769_pochhammer__minus_H,axiom,
    ! [B: rat,K: nat] :
      ( ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ ( minus_minus_rat @ B @ ( semiri681578069525770553at_rat @ K ) ) @ one_one_rat ) @ K )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K ) @ ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ B ) @ K ) ) ) ).

% pochhammer_minus'
thf(fact_2770_pochhammer__minus_H,axiom,
    ! [B: int,K: nat] :
      ( ( comm_s4660882817536571857er_int @ ( plus_plus_int @ ( minus_minus_int @ B @ ( semiri1314217659103216013at_int @ K ) ) @ one_one_int ) @ K )
      = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ K ) @ ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ B ) @ K ) ) ) ).

% pochhammer_minus'
thf(fact_2771_pochhammer__0,axiom,
    ! [A: nat] :
      ( ( comm_s4663373288045622133er_nat @ A @ zero_zero_nat )
      = one_one_nat ) ).

% pochhammer_0
thf(fact_2772_pochhammer__0,axiom,
    ! [A: int] :
      ( ( comm_s4660882817536571857er_int @ A @ zero_zero_nat )
      = one_one_int ) ).

% pochhammer_0
thf(fact_2773_pochhammer__0,axiom,
    ! [A: code_integer] :
      ( ( comm_s8582702949713902594nteger @ A @ zero_zero_nat )
      = one_one_Code_integer ) ).

% pochhammer_0
thf(fact_2774_pochhammer__0,axiom,
    ! [A: rat] :
      ( ( comm_s4028243227959126397er_rat @ A @ zero_zero_nat )
      = one_one_rat ) ).

% pochhammer_0
thf(fact_2775_pochhammer__0,axiom,
    ! [A: code_natural] :
      ( ( comm_s7406298101470620109atural @ A @ zero_zero_nat )
      = one_one_Code_natural ) ).

% pochhammer_0
thf(fact_2776_unique__quotient,axiom,
    ! [A: int,B: int,Q2: int,R: int,Q5: int,R3: int] :
      ( ( eucl_rel_int @ A @ B @ ( product_Pair_int_int @ Q2 @ R ) )
     => ( ( eucl_rel_int @ A @ B @ ( product_Pair_int_int @ Q5 @ R3 ) )
       => ( Q2 = Q5 ) ) ) ).

% unique_quotient
thf(fact_2777_unique__remainder,axiom,
    ! [A: int,B: int,Q2: int,R: int,Q5: int,R3: int] :
      ( ( eucl_rel_int @ A @ B @ ( product_Pair_int_int @ Q2 @ R ) )
     => ( ( eucl_rel_int @ A @ B @ ( product_Pair_int_int @ Q5 @ R3 ) )
       => ( R = R3 ) ) ) ).

% unique_remainder
thf(fact_2778_pochhammer__pos,axiom,
    ! [X: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ X )
     => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( comm_s8582702949713902594nteger @ X @ N ) ) ) ).

% pochhammer_pos
thf(fact_2779_pochhammer__pos,axiom,
    ! [X: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ X )
     => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( comm_s7406298101470620109atural @ X @ N ) ) ) ).

% pochhammer_pos
thf(fact_2780_pochhammer__pos,axiom,
    ! [X: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ X )
     => ( ord_less_rat @ zero_zero_rat @ ( comm_s4028243227959126397er_rat @ X @ N ) ) ) ).

% pochhammer_pos
thf(fact_2781_pochhammer__pos,axiom,
    ! [X: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ X )
     => ( ord_less_nat @ zero_zero_nat @ ( comm_s4663373288045622133er_nat @ X @ N ) ) ) ).

% pochhammer_pos
thf(fact_2782_pochhammer__pos,axiom,
    ! [X: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ X )
     => ( ord_less_int @ zero_zero_int @ ( comm_s4660882817536571857er_int @ X @ N ) ) ) ).

% pochhammer_pos
thf(fact_2783_pochhammer__eq__0__mono,axiom,
    ! [A: rat,N: nat,M: nat] :
      ( ( ( comm_s4028243227959126397er_rat @ A @ N )
        = zero_zero_rat )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( comm_s4028243227959126397er_rat @ A @ M )
          = zero_zero_rat ) ) ) ).

% pochhammer_eq_0_mono
thf(fact_2784_pochhammer__neq__0__mono,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ( comm_s4028243227959126397er_rat @ A @ M )
       != zero_zero_rat )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( comm_s4028243227959126397er_rat @ A @ N )
         != zero_zero_rat ) ) ) ).

% pochhammer_neq_0_mono
thf(fact_2785_eucl__rel__int__by0,axiom,
    ! [K: int] : ( eucl_rel_int @ K @ zero_zero_int @ ( product_Pair_int_int @ zero_zero_int @ K ) ) ).

% eucl_rel_int_by0
thf(fact_2786_pochhammer__nonneg,axiom,
    ! [X: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ X )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( comm_s8582702949713902594nteger @ X @ N ) ) ) ).

% pochhammer_nonneg
thf(fact_2787_pochhammer__nonneg,axiom,
    ! [X: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ X )
     => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( comm_s7406298101470620109atural @ X @ N ) ) ) ).

% pochhammer_nonneg
thf(fact_2788_pochhammer__nonneg,axiom,
    ! [X: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ X )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( comm_s4028243227959126397er_rat @ X @ N ) ) ) ).

% pochhammer_nonneg
thf(fact_2789_pochhammer__nonneg,axiom,
    ! [X: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ X )
     => ( ord_less_eq_nat @ zero_zero_nat @ ( comm_s4663373288045622133er_nat @ X @ N ) ) ) ).

% pochhammer_nonneg
thf(fact_2790_pochhammer__nonneg,axiom,
    ! [X: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ X )
     => ( ord_less_eq_int @ zero_zero_int @ ( comm_s4660882817536571857er_int @ X @ N ) ) ) ).

% pochhammer_nonneg
thf(fact_2791_pochhammer__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( comm_s4663373288045622133er_nat @ zero_zero_nat @ N )
          = one_one_nat ) )
      & ( ( N != zero_zero_nat )
       => ( ( comm_s4663373288045622133er_nat @ zero_zero_nat @ N )
          = zero_zero_nat ) ) ) ).

% pochhammer_0_left
thf(fact_2792_pochhammer__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( comm_s4660882817536571857er_int @ zero_zero_int @ N )
          = one_one_int ) )
      & ( ( N != zero_zero_nat )
       => ( ( comm_s4660882817536571857er_int @ zero_zero_int @ N )
          = zero_zero_int ) ) ) ).

% pochhammer_0_left
thf(fact_2793_pochhammer__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( comm_s8582702949713902594nteger @ zero_z3403309356797280102nteger @ N )
          = one_one_Code_integer ) )
      & ( ( N != zero_zero_nat )
       => ( ( comm_s8582702949713902594nteger @ zero_z3403309356797280102nteger @ N )
          = zero_z3403309356797280102nteger ) ) ) ).

% pochhammer_0_left
thf(fact_2794_pochhammer__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( comm_s4028243227959126397er_rat @ zero_zero_rat @ N )
          = one_one_rat ) )
      & ( ( N != zero_zero_nat )
       => ( ( comm_s4028243227959126397er_rat @ zero_zero_rat @ N )
          = zero_zero_rat ) ) ) ).

% pochhammer_0_left
thf(fact_2795_pochhammer__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( comm_s7406298101470620109atural @ zero_z2226904508553997617atural @ N )
          = one_one_Code_natural ) )
      & ( ( N != zero_zero_nat )
       => ( ( comm_s7406298101470620109atural @ zero_z2226904508553997617atural @ N )
          = zero_z2226904508553997617atural ) ) ) ).

% pochhammer_0_left
thf(fact_2796_pochhammer__eq__0__iff,axiom,
    ! [A: rat,N: nat] :
      ( ( ( comm_s4028243227959126397er_rat @ A @ N )
        = zero_zero_rat )
      = ( ? [K3: nat] :
            ( ( ord_less_nat @ K3 @ N )
            & ( A
              = ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ K3 ) ) ) ) ) ) ).

% pochhammer_eq_0_iff
thf(fact_2797_pochhammer__of__nat__eq__0__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ ( semiri4939895301339042750nteger @ N ) ) @ K )
        = zero_z3403309356797280102nteger )
      = ( ord_less_nat @ N @ K ) ) ).

% pochhammer_of_nat_eq_0_iff
thf(fact_2798_pochhammer__of__nat__eq__0__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ N ) ) @ K )
        = zero_zero_rat )
      = ( ord_less_nat @ N @ K ) ) ).

% pochhammer_of_nat_eq_0_iff
thf(fact_2799_pochhammer__of__nat__eq__0__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ K )
        = zero_zero_int )
      = ( ord_less_nat @ N @ K ) ) ).

% pochhammer_of_nat_eq_0_iff
thf(fact_2800_pochhammer__of__nat__eq__0__lemma,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ N @ K )
     => ( ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ ( semiri4939895301339042750nteger @ N ) ) @ K )
        = zero_z3403309356797280102nteger ) ) ).

% pochhammer_of_nat_eq_0_lemma
thf(fact_2801_pochhammer__of__nat__eq__0__lemma,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ N @ K )
     => ( ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ N ) ) @ K )
        = zero_zero_rat ) ) ).

% pochhammer_of_nat_eq_0_lemma
thf(fact_2802_pochhammer__of__nat__eq__0__lemma,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ N @ K )
     => ( ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ K )
        = zero_zero_int ) ) ).

% pochhammer_of_nat_eq_0_lemma
thf(fact_2803_pochhammer__of__nat__eq__0__lemma_H,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ ( semiri4939895301339042750nteger @ N ) ) @ K )
       != zero_z3403309356797280102nteger ) ) ).

% pochhammer_of_nat_eq_0_lemma'
thf(fact_2804_pochhammer__of__nat__eq__0__lemma_H,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ N ) ) @ K )
       != zero_zero_rat ) ) ).

% pochhammer_of_nat_eq_0_lemma'
thf(fact_2805_pochhammer__of__nat__eq__0__lemma_H,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ K )
       != zero_zero_int ) ) ).

% pochhammer_of_nat_eq_0_lemma'
thf(fact_2806_pochhammer__product_H,axiom,
    ! [Z: code_integer,N: nat,M: nat] :
      ( ( comm_s8582702949713902594nteger @ Z @ ( plus_plus_nat @ N @ M ) )
      = ( times_3573771949741848930nteger @ ( comm_s8582702949713902594nteger @ Z @ N ) @ ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ Z @ ( semiri4939895301339042750nteger @ N ) ) @ M ) ) ) ).

% pochhammer_product'
thf(fact_2807_pochhammer__product_H,axiom,
    ! [Z: rat,N: nat,M: nat] :
      ( ( comm_s4028243227959126397er_rat @ Z @ ( plus_plus_nat @ N @ M ) )
      = ( times_times_rat @ ( comm_s4028243227959126397er_rat @ Z @ N ) @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ Z @ ( semiri681578069525770553at_rat @ N ) ) @ M ) ) ) ).

% pochhammer_product'
thf(fact_2808_pochhammer__product_H,axiom,
    ! [Z: int,N: nat,M: nat] :
      ( ( comm_s4660882817536571857er_int @ Z @ ( plus_plus_nat @ N @ M ) )
      = ( times_times_int @ ( comm_s4660882817536571857er_int @ Z @ N ) @ ( comm_s4660882817536571857er_int @ ( plus_plus_int @ Z @ ( semiri1314217659103216013at_int @ N ) ) @ M ) ) ) ).

% pochhammer_product'
thf(fact_2809_pochhammer__product_H,axiom,
    ! [Z: nat,N: nat,M: nat] :
      ( ( comm_s4663373288045622133er_nat @ Z @ ( plus_plus_nat @ N @ M ) )
      = ( times_times_nat @ ( comm_s4663373288045622133er_nat @ Z @ N ) @ ( comm_s4663373288045622133er_nat @ ( plus_plus_nat @ Z @ ( semiri1316708129612266289at_nat @ N ) ) @ M ) ) ) ).

% pochhammer_product'
thf(fact_2810_eucl__rel__int__dividesI,axiom,
    ! [L: int,K: int,Q2: int] :
      ( ( L != zero_zero_int )
     => ( ( K
          = ( times_times_int @ Q2 @ L ) )
       => ( eucl_rel_int @ K @ L @ ( product_Pair_int_int @ Q2 @ zero_zero_int ) ) ) ) ).

% eucl_rel_int_dividesI
thf(fact_2811_Collect__subset,axiom,
    ! [A3: set_se7855581050983116737at_nat,P: set_Pr1261947904930325089at_nat > $o] :
      ( ord_le2077887516847798113at_nat
      @ ( collec5514110066124741708at_nat
        @ ^ [X4: set_Pr1261947904930325089at_nat] :
            ( ( member2643936169264416010at_nat @ X4 @ A3 )
            & ( P @ X4 ) ) )
      @ A3 ) ).

% Collect_subset
thf(fact_2812_Collect__subset,axiom,
    ! [A3: set_se6260736226359567993nt_int,P: set_Pr958786334691620121nt_int > $o] :
      ( ord_le483042692224249369nt_int
      @ ( collec5210948495886036740nt_int
        @ ^ [X4: set_Pr958786334691620121nt_int] :
            ( ( member2340774599025711042nt_int @ X4 @ A3 )
            & ( P @ X4 ) ) )
      @ A3 ) ).

% Collect_subset
thf(fact_2813_Collect__subset,axiom,
    ! [A3: set_set_nat,P: set_nat > $o] :
      ( ord_le6893508408891458716et_nat
      @ ( collect_set_nat
        @ ^ [X4: set_nat] :
            ( ( member_set_nat @ X4 @ A3 )
            & ( P @ X4 ) ) )
      @ A3 ) ).

% Collect_subset
thf(fact_2814_Collect__subset,axiom,
    ! [A3: set_int,P: int > $o] :
      ( ord_less_eq_set_int
      @ ( collect_int
        @ ^ [X4: int] :
            ( ( member_int @ X4 @ A3 )
            & ( P @ X4 ) ) )
      @ A3 ) ).

% Collect_subset
thf(fact_2815_Collect__subset,axiom,
    ! [A3: set_nat,P: nat > $o] :
      ( ord_less_eq_set_nat
      @ ( collect_nat
        @ ^ [X4: nat] :
            ( ( member_nat @ X4 @ A3 )
            & ( P @ X4 ) ) )
      @ A3 ) ).

% Collect_subset
thf(fact_2816_pochhammer__product,axiom,
    ! [M: nat,N: nat,Z: code_integer] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( comm_s8582702949713902594nteger @ Z @ N )
        = ( times_3573771949741848930nteger @ ( comm_s8582702949713902594nteger @ Z @ M ) @ ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ Z @ ( semiri4939895301339042750nteger @ M ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% pochhammer_product
thf(fact_2817_pochhammer__product,axiom,
    ! [M: nat,N: nat,Z: rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( comm_s4028243227959126397er_rat @ Z @ N )
        = ( times_times_rat @ ( comm_s4028243227959126397er_rat @ Z @ M ) @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ Z @ ( semiri681578069525770553at_rat @ M ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% pochhammer_product
thf(fact_2818_pochhammer__product,axiom,
    ! [M: nat,N: nat,Z: int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( comm_s4660882817536571857er_int @ Z @ N )
        = ( times_times_int @ ( comm_s4660882817536571857er_int @ Z @ M ) @ ( comm_s4660882817536571857er_int @ ( plus_plus_int @ Z @ ( semiri1314217659103216013at_int @ M ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% pochhammer_product
thf(fact_2819_pochhammer__product,axiom,
    ! [M: nat,N: nat,Z: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( comm_s4663373288045622133er_nat @ Z @ N )
        = ( times_times_nat @ ( comm_s4663373288045622133er_nat @ Z @ M ) @ ( comm_s4663373288045622133er_nat @ ( plus_plus_nat @ Z @ ( semiri1316708129612266289at_nat @ M ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% pochhammer_product
thf(fact_2820_pochhammer__absorb__comp,axiom,
    ! [R: code_integer,K: nat] :
      ( ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ R @ ( semiri4939895301339042750nteger @ K ) ) @ ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ R ) @ K ) )
      = ( times_3573771949741848930nteger @ R @ ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ R ) @ one_one_Code_integer ) @ K ) ) ) ).

% pochhammer_absorb_comp
thf(fact_2821_pochhammer__absorb__comp,axiom,
    ! [R: rat,K: nat] :
      ( ( times_times_rat @ ( minus_minus_rat @ R @ ( semiri681578069525770553at_rat @ K ) ) @ ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ R ) @ K ) )
      = ( times_times_rat @ R @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ ( uminus_uminus_rat @ R ) @ one_one_rat ) @ K ) ) ) ).

% pochhammer_absorb_comp
thf(fact_2822_pochhammer__absorb__comp,axiom,
    ! [R: int,K: nat] :
      ( ( times_times_int @ ( minus_minus_int @ R @ ( semiri1314217659103216013at_int @ K ) ) @ ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ R ) @ K ) )
      = ( times_times_int @ R @ ( comm_s4660882817536571857er_int @ ( plus_plus_int @ ( uminus_uminus_int @ R ) @ one_one_int ) @ K ) ) ) ).

% pochhammer_absorb_comp
thf(fact_2823_pochhammer__minus,axiom,
    ! [B: code_integer,K: nat] :
      ( ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ B ) @ K )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ K ) @ ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ B @ ( semiri4939895301339042750nteger @ K ) ) @ one_one_Code_integer ) @ K ) ) ) ).

% pochhammer_minus
thf(fact_2824_pochhammer__minus,axiom,
    ! [B: rat,K: nat] :
      ( ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ B ) @ K )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K ) @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ ( minus_minus_rat @ B @ ( semiri681578069525770553at_rat @ K ) ) @ one_one_rat ) @ K ) ) ) ).

% pochhammer_minus
thf(fact_2825_pochhammer__minus,axiom,
    ! [B: int,K: nat] :
      ( ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ B ) @ K )
      = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ K ) @ ( comm_s4660882817536571857er_int @ ( plus_plus_int @ ( minus_minus_int @ B @ ( semiri1314217659103216013at_int @ K ) ) @ one_one_int ) @ K ) ) ) ).

% pochhammer_minus
thf(fact_2826_nat__ivt__aux,axiom,
    ! [N: nat,F: nat > int,K: int] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( F @ ( suc @ I3 ) ) @ ( F @ I3 ) ) ) @ one_one_int ) )
     => ( ( ord_less_eq_int @ ( F @ zero_zero_nat ) @ K )
       => ( ( ord_less_eq_int @ K @ ( F @ N ) )
         => ? [I3: nat] :
              ( ( ord_less_eq_nat @ I3 @ N )
              & ( ( F @ I3 )
                = K ) ) ) ) ) ).

% nat_ivt_aux
thf(fact_2827_power__minus_H,axiom,
    ! [X: int,N: nat] :
      ( ( nO_MATCH_int_int @ one_one_int @ X )
     => ( ( power_power_int @ ( uminus_uminus_int @ X ) @ N )
        = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( power_power_int @ X @ N ) ) ) ) ).

% power_minus'
thf(fact_2828_power__minus_H,axiom,
    ! [X: code_integer,N: nat] :
      ( ( nO_MAT8252062027627875367nteger @ one_one_Code_integer @ X )
     => ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ X ) @ N )
        = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ ( power_8256067586552552935nteger @ X @ N ) ) ) ) ).

% power_minus'
thf(fact_2829_power__minus_H,axiom,
    ! [X: rat,N: nat] :
      ( ( nO_MATCH_rat_rat @ one_one_rat @ X )
     => ( ( power_power_rat @ ( uminus_uminus_rat @ X ) @ N )
        = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( power_power_rat @ X @ N ) ) ) ) ).

% power_minus'
thf(fact_2830_one__less__nat__eq,axiom,
    ! [Z: int] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ ( nat2 @ Z ) )
      = ( ord_less_int @ one_one_int @ Z ) ) ).

% one_less_nat_eq
thf(fact_2831_nat__intermed__int__val,axiom,
    ! [M: nat,N: nat,F: nat > int,K: int] :
      ( ! [I3: nat] :
          ( ( ( ord_less_eq_nat @ M @ I3 )
            & ( ord_less_nat @ I3 @ N ) )
         => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( F @ ( suc @ I3 ) ) @ ( F @ I3 ) ) ) @ one_one_int ) )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( ( ord_less_eq_int @ ( F @ M ) @ K )
         => ( ( ord_less_eq_int @ K @ ( F @ N ) )
           => ? [I3: nat] :
                ( ( ord_less_eq_nat @ M @ I3 )
                & ( ord_less_eq_nat @ I3 @ N )
                & ( ( F @ I3 )
                  = K ) ) ) ) ) ) ).

% nat_intermed_int_val
thf(fact_2832_pochhammer__same,axiom,
    ! [N: nat] :
      ( ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ ( semiri4939895301339042750nteger @ N ) ) @ N )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ ( semiri3624122377584611663nteger @ N ) ) ) ).

% pochhammer_same
thf(fact_2833_pochhammer__same,axiom,
    ! [N: nat] :
      ( ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ N ) ) @ N )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( semiri773545260158071498ct_rat @ N ) ) ) ).

% pochhammer_same
thf(fact_2834_pochhammer__same,axiom,
    ! [N: nat] :
      ( ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ N )
      = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( semiri1406184849735516958ct_int @ N ) ) ) ).

% pochhammer_same
thf(fact_2835_fact__reduce,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( semiri3624122377584611663nteger @ N )
        = ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ N ) @ ( semiri3624122377584611663nteger @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% fact_reduce
thf(fact_2836_fact__reduce,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( semiri773545260158071498ct_rat @ N )
        = ( times_times_rat @ ( semiri681578069525770553at_rat @ N ) @ ( semiri773545260158071498ct_rat @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% fact_reduce
thf(fact_2837_fact__reduce,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( semiri1406184849735516958ct_int @ N )
        = ( times_times_int @ ( semiri1314217659103216013at_int @ N ) @ ( semiri1406184849735516958ct_int @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% fact_reduce
thf(fact_2838_fact__reduce,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( semiri1408675320244567234ct_nat @ N )
        = ( times_times_nat @ ( semiri1316708129612266289at_nat @ N ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% fact_reduce
thf(fact_2839_fact__num__eq__if,axiom,
    ( semiri2447717529341329178atural
    = ( ^ [M5: nat] : ( if_Code_natural @ ( M5 = zero_zero_nat ) @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ M5 ) @ ( semiri2447717529341329178atural @ ( minus_minus_nat @ M5 @ one_one_nat ) ) ) ) ) ) ).

% fact_num_eq_if
thf(fact_2840_fact__num__eq__if,axiom,
    ( semiri3624122377584611663nteger
    = ( ^ [M5: nat] : ( if_Code_integer @ ( M5 = zero_zero_nat ) @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ M5 ) @ ( semiri3624122377584611663nteger @ ( minus_minus_nat @ M5 @ one_one_nat ) ) ) ) ) ) ).

% fact_num_eq_if
thf(fact_2841_fact__num__eq__if,axiom,
    ( semiri773545260158071498ct_rat
    = ( ^ [M5: nat] : ( if_rat @ ( M5 = zero_zero_nat ) @ one_one_rat @ ( times_times_rat @ ( semiri681578069525770553at_rat @ M5 ) @ ( semiri773545260158071498ct_rat @ ( minus_minus_nat @ M5 @ one_one_nat ) ) ) ) ) ) ).

% fact_num_eq_if
thf(fact_2842_fact__num__eq__if,axiom,
    ( semiri1406184849735516958ct_int
    = ( ^ [M5: nat] : ( if_int @ ( M5 = zero_zero_nat ) @ one_one_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ M5 ) @ ( semiri1406184849735516958ct_int @ ( minus_minus_nat @ M5 @ one_one_nat ) ) ) ) ) ) ).

% fact_num_eq_if
thf(fact_2843_fact__num__eq__if,axiom,
    ( semiri1408675320244567234ct_nat
    = ( ^ [M5: nat] : ( if_nat @ ( M5 = zero_zero_nat ) @ one_one_nat @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ M5 ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ M5 @ one_one_nat ) ) ) ) ) ) ).

% fact_num_eq_if
thf(fact_2844_mult__ceiling__le__Ints,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( member_rat @ A @ ring_1_Ints_rat )
       => ( ord_less_eq_rat @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ ( times_times_rat @ A @ B ) ) ) @ ( ring_1_of_int_rat @ ( times_times_int @ ( archim2889992004027027881ng_rat @ A ) @ ( archim2889992004027027881ng_rat @ B ) ) ) ) ) ) ).

% mult_ceiling_le_Ints
thf(fact_2845_mult__ceiling__le__Ints,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( member_rat @ A @ ring_1_Ints_rat )
       => ( ord_less_eq_int @ ( ring_1_of_int_int @ ( archim2889992004027027881ng_rat @ ( times_times_rat @ A @ B ) ) ) @ ( ring_1_of_int_int @ ( times_times_int @ ( archim2889992004027027881ng_rat @ A ) @ ( archim2889992004027027881ng_rat @ B ) ) ) ) ) ) ).

% mult_ceiling_le_Ints
thf(fact_2846_nat_Oinject,axiom,
    ! [X2: nat,Y2: nat] :
      ( ( ( suc @ X2 )
        = ( suc @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% nat.inject
thf(fact_2847_old_Onat_Oinject,axiom,
    ! [Nat: nat,Nat2: nat] :
      ( ( ( suc @ Nat )
        = ( suc @ Nat2 ) )
      = ( Nat = Nat2 ) ) ).

% old.nat.inject
thf(fact_2848_Suc__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_less_eq
thf(fact_2849_Suc__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) ) ) ).

% Suc_mono
thf(fact_2850_lessI,axiom,
    ! [N: nat] : ( ord_less_nat @ N @ ( suc @ N ) ) ).

% lessI
thf(fact_2851_Suc__le__mono,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( suc @ M ) )
      = ( ord_less_eq_nat @ N @ M ) ) ).

% Suc_le_mono
thf(fact_2852_add__Suc__right,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ M @ ( suc @ N ) )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc_right
thf(fact_2853_Suc__diff__diff,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M ) @ N ) @ ( suc @ K ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ N ) @ K ) ) ).

% Suc_diff_diff
thf(fact_2854_diff__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_Suc_Suc
thf(fact_2855_power__0__Suc,axiom,
    ! [N: nat] :
      ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ ( suc @ N ) )
      = zero_z3403309356797280102nteger ) ).

% power_0_Suc
thf(fact_2856_power__0__Suc,axiom,
    ! [N: nat] :
      ( ( power_power_rat @ zero_zero_rat @ ( suc @ N ) )
      = zero_zero_rat ) ).

% power_0_Suc
thf(fact_2857_power__0__Suc,axiom,
    ! [N: nat] :
      ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ ( suc @ N ) )
      = zero_z2226904508553997617atural ) ).

% power_0_Suc
thf(fact_2858_power__0__Suc,axiom,
    ! [N: nat] :
      ( ( power_power_nat @ zero_zero_nat @ ( suc @ N ) )
      = zero_zero_nat ) ).

% power_0_Suc
thf(fact_2859_power__0__Suc,axiom,
    ! [N: nat] :
      ( ( power_power_int @ zero_zero_int @ ( suc @ N ) )
      = zero_zero_int ) ).

% power_0_Suc
thf(fact_2860_less__Suc0,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( N = zero_zero_nat ) ) ).

% less_Suc0
thf(fact_2861_zero__less__Suc,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).

% zero_less_Suc
thf(fact_2862_power__Suc0__right,axiom,
    ! [A: nat] :
      ( ( power_power_nat @ A @ ( suc @ zero_zero_nat ) )
      = A ) ).

% power_Suc0_right
thf(fact_2863_power__Suc0__right,axiom,
    ! [A: int] :
      ( ( power_power_int @ A @ ( suc @ zero_zero_nat ) )
      = A ) ).

% power_Suc0_right
thf(fact_2864_mult__eq__1__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( M
          = ( suc @ zero_zero_nat ) )
        & ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% mult_eq_1_iff
thf(fact_2865_one__eq__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( times_times_nat @ M @ N ) )
      = ( ( M
          = ( suc @ zero_zero_nat ) )
        & ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% one_eq_mult_iff
thf(fact_2866_mult__Suc__right,axiom,
    ! [M: nat,N: nat] :
      ( ( times_times_nat @ M @ ( suc @ N ) )
      = ( plus_plus_nat @ M @ ( times_times_nat @ M @ N ) ) ) ).

% mult_Suc_right
thf(fact_2867_diff__Suc__1,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( suc @ N ) @ one_one_nat )
      = N ) ).

% diff_Suc_1
thf(fact_2868_fact__0,axiom,
    ( ( semiri1406184849735516958ct_int @ zero_zero_nat )
    = one_one_int ) ).

% fact_0
thf(fact_2869_fact__0,axiom,
    ( ( semiri3624122377584611663nteger @ zero_zero_nat )
    = one_one_Code_integer ) ).

% fact_0
thf(fact_2870_fact__0,axiom,
    ( ( semiri773545260158071498ct_rat @ zero_zero_nat )
    = one_one_rat ) ).

% fact_0
thf(fact_2871_fact__0,axiom,
    ( ( semiri2447717529341329178atural @ zero_zero_nat )
    = one_one_Code_natural ) ).

% fact_0
thf(fact_2872_fact__0,axiom,
    ( ( semiri1408675320244567234ct_nat @ zero_zero_nat )
    = one_one_nat ) ).

% fact_0
thf(fact_2873_ceiling__zero,axiom,
    ( ( archim2889992004027027881ng_rat @ zero_zero_rat )
    = zero_zero_int ) ).

% ceiling_zero
thf(fact_2874_nat__power__eq__Suc__0__iff,axiom,
    ! [X: nat,M: nat] :
      ( ( ( power_power_nat @ X @ M )
        = ( suc @ zero_zero_nat ) )
      = ( ( M = zero_zero_nat )
        | ( X
          = ( suc @ zero_zero_nat ) ) ) ) ).

% nat_power_eq_Suc_0_iff
thf(fact_2875_power__Suc__0,axiom,
    ! [N: nat] :
      ( ( power_power_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( suc @ zero_zero_nat ) ) ).

% power_Suc_0
thf(fact_2876_ceiling__one,axiom,
    ( ( archim2889992004027027881ng_rat @ one_one_rat )
    = one_one_int ) ).

% ceiling_one
thf(fact_2877_fact__1,axiom,
    ( ( semiri1406184849735516958ct_int @ one_one_nat )
    = one_one_int ) ).

% fact_1
thf(fact_2878_fact__1,axiom,
    ( ( semiri3624122377584611663nteger @ one_one_nat )
    = one_one_Code_integer ) ).

% fact_1
thf(fact_2879_fact__1,axiom,
    ( ( semiri773545260158071498ct_rat @ one_one_nat )
    = one_one_rat ) ).

% fact_1
thf(fact_2880_fact__1,axiom,
    ( ( semiri2447717529341329178atural @ one_one_nat )
    = one_one_Code_natural ) ).

% fact_1
thf(fact_2881_fact__1,axiom,
    ( ( semiri1408675320244567234ct_nat @ one_one_nat )
    = one_one_nat ) ).

% fact_1
thf(fact_2882_of__nat__Suc,axiom,
    ! [M: nat] :
      ( ( semiri4939895301339042750nteger @ ( suc @ M ) )
      = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( semiri4939895301339042750nteger @ M ) ) ) ).

% of_nat_Suc
thf(fact_2883_of__nat__Suc,axiom,
    ! [M: nat] :
      ( ( semiri3763490453095760265atural @ ( suc @ M ) )
      = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( semiri3763490453095760265atural @ M ) ) ) ).

% of_nat_Suc
thf(fact_2884_of__nat__Suc,axiom,
    ! [M: nat] :
      ( ( semiri681578069525770553at_rat @ ( suc @ M ) )
      = ( plus_plus_rat @ one_one_rat @ ( semiri681578069525770553at_rat @ M ) ) ) ).

% of_nat_Suc
thf(fact_2885_of__nat__Suc,axiom,
    ! [M: nat] :
      ( ( semiri1314217659103216013at_int @ ( suc @ M ) )
      = ( plus_plus_int @ one_one_int @ ( semiri1314217659103216013at_int @ M ) ) ) ).

% of_nat_Suc
thf(fact_2886_of__nat__Suc,axiom,
    ! [M: nat] :
      ( ( semiri1316708129612266289at_nat @ ( suc @ M ) )
      = ( plus_plus_nat @ one_one_nat @ ( semiri1316708129612266289at_nat @ M ) ) ) ).

% of_nat_Suc
thf(fact_2887_Suc__pred,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
        = N ) ) ).

% Suc_pred
thf(fact_2888_one__le__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( times_times_nat @ M @ N ) )
      = ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ M )
        & ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ N ) ) ) ).

% one_le_mult_iff
thf(fact_2889_diff__Suc__diff__eq2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( suc @ ( minus_minus_nat @ J @ K ) ) @ I )
        = ( minus_minus_nat @ ( suc @ J ) @ ( plus_plus_nat @ K @ I ) ) ) ) ).

% diff_Suc_diff_eq2
thf(fact_2890_diff__Suc__diff__eq1,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I @ ( suc @ ( minus_minus_nat @ J @ K ) ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ ( suc @ J ) ) ) ) ).

% diff_Suc_diff_eq1
thf(fact_2891_nat__1,axiom,
    ( ( nat2 @ one_one_int )
    = ( suc @ zero_zero_nat ) ) ).

% nat_1
thf(fact_2892_fact__Suc__0,axiom,
    ( ( semiri1406184849735516958ct_int @ ( suc @ zero_zero_nat ) )
    = one_one_int ) ).

% fact_Suc_0
thf(fact_2893_fact__Suc__0,axiom,
    ( ( semiri3624122377584611663nteger @ ( suc @ zero_zero_nat ) )
    = one_one_Code_integer ) ).

% fact_Suc_0
thf(fact_2894_fact__Suc__0,axiom,
    ( ( semiri773545260158071498ct_rat @ ( suc @ zero_zero_nat ) )
    = one_one_rat ) ).

% fact_Suc_0
thf(fact_2895_fact__Suc__0,axiom,
    ( ( semiri2447717529341329178atural @ ( suc @ zero_zero_nat ) )
    = one_one_Code_natural ) ).

% fact_Suc_0
thf(fact_2896_fact__Suc__0,axiom,
    ( ( semiri1408675320244567234ct_nat @ ( suc @ zero_zero_nat ) )
    = one_one_nat ) ).

% fact_Suc_0
thf(fact_2897_negative__zless,axiom,
    ! [N: nat,M: nat] : ( ord_less_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N ) ) ) @ ( semiri1314217659103216013at_int @ M ) ) ).

% negative_zless
thf(fact_2898_ceiling__add__of__int,axiom,
    ! [X: rat,Z: int] :
      ( ( archim2889992004027027881ng_rat @ ( plus_plus_rat @ X @ ( ring_1_of_int_rat @ Z ) ) )
      = ( plus_plus_int @ ( archim2889992004027027881ng_rat @ X ) @ Z ) ) ).

% ceiling_add_of_int
thf(fact_2899_Suc__diff__1,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ one_one_nat ) )
        = N ) ) ).

% Suc_diff_1
thf(fact_2900_ceiling__le__zero,axiom,
    ! [X: rat] :
      ( ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ X ) @ zero_zero_int )
      = ( ord_less_eq_rat @ X @ zero_zero_rat ) ) ).

% ceiling_le_zero
thf(fact_2901_zero__less__ceiling,axiom,
    ! [X: rat] :
      ( ( ord_less_int @ zero_zero_int @ ( archim2889992004027027881ng_rat @ X ) )
      = ( ord_less_rat @ zero_zero_rat @ X ) ) ).

% zero_less_ceiling
thf(fact_2902_ceiling__less__one,axiom,
    ! [X: rat] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X ) @ one_one_int )
      = ( ord_less_eq_rat @ X @ zero_zero_rat ) ) ).

% ceiling_less_one
thf(fact_2903_one__le__ceiling,axiom,
    ! [X: rat] :
      ( ( ord_less_eq_int @ one_one_int @ ( archim2889992004027027881ng_rat @ X ) )
      = ( ord_less_rat @ zero_zero_rat @ X ) ) ).

% one_le_ceiling
thf(fact_2904_ceiling__le__one,axiom,
    ! [X: rat] :
      ( ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ X ) @ one_one_int )
      = ( ord_less_eq_rat @ X @ one_one_rat ) ) ).

% ceiling_le_one
thf(fact_2905_one__less__ceiling,axiom,
    ! [X: rat] :
      ( ( ord_less_int @ one_one_int @ ( archim2889992004027027881ng_rat @ X ) )
      = ( ord_less_rat @ one_one_rat @ X ) ) ).

% one_less_ceiling
thf(fact_2906_ceiling__add__one,axiom,
    ! [X: rat] :
      ( ( archim2889992004027027881ng_rat @ ( plus_plus_rat @ X @ one_one_rat ) )
      = ( plus_plus_int @ ( archim2889992004027027881ng_rat @ X ) @ one_one_int ) ) ).

% ceiling_add_one
thf(fact_2907_ceiling__diff__one,axiom,
    ! [X: rat] :
      ( ( archim2889992004027027881ng_rat @ ( minus_minus_rat @ X @ one_one_rat ) )
      = ( minus_minus_int @ ( archim2889992004027027881ng_rat @ X ) @ one_one_int ) ) ).

% ceiling_diff_one
thf(fact_2908_ceiling__less__zero,axiom,
    ! [X: rat] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X ) @ zero_zero_int )
      = ( ord_less_eq_rat @ X @ ( uminus_uminus_rat @ one_one_rat ) ) ) ).

% ceiling_less_zero
thf(fact_2909_zero__le__ceiling,axiom,
    ! [X: rat] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( archim2889992004027027881ng_rat @ X ) )
      = ( ord_less_rat @ ( uminus_uminus_rat @ one_one_rat ) @ X ) ) ).

% zero_le_ceiling
thf(fact_2910_Suc__inject,axiom,
    ! [X: nat,Y3: nat] :
      ( ( ( suc @ X )
        = ( suc @ Y3 ) )
     => ( X = Y3 ) ) ).

% Suc_inject
thf(fact_2911_n__not__Suc__n,axiom,
    ! [N: nat] :
      ( N
     != ( suc @ N ) ) ).

% n_not_Suc_n
thf(fact_2912_fact__ge__Suc__0__nat,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_ge_Suc_0_nat
thf(fact_2913_fact__nonzero,axiom,
    ! [N: nat] :
      ( ( semiri1406184849735516958ct_int @ N )
     != zero_zero_int ) ).

% fact_nonzero
thf(fact_2914_fact__nonzero,axiom,
    ! [N: nat] :
      ( ( semiri3624122377584611663nteger @ N )
     != zero_z3403309356797280102nteger ) ).

% fact_nonzero
thf(fact_2915_fact__nonzero,axiom,
    ! [N: nat] :
      ( ( semiri773545260158071498ct_rat @ N )
     != zero_zero_rat ) ).

% fact_nonzero
thf(fact_2916_fact__nonzero,axiom,
    ! [N: nat] :
      ( ( semiri2447717529341329178atural @ N )
     != zero_z2226904508553997617atural ) ).

% fact_nonzero
thf(fact_2917_fact__nonzero,axiom,
    ! [N: nat] :
      ( ( semiri1408675320244567234ct_nat @ N )
     != zero_zero_nat ) ).

% fact_nonzero
thf(fact_2918_not0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ? [M4: nat] :
          ( N
          = ( suc @ M4 ) ) ) ).

% not0_implies_Suc
thf(fact_2919_Zero__not__Suc,axiom,
    ! [M: nat] :
      ( zero_zero_nat
     != ( suc @ M ) ) ).

% Zero_not_Suc
thf(fact_2920_Zero__neq__Suc,axiom,
    ! [M: nat] :
      ( zero_zero_nat
     != ( suc @ M ) ) ).

% Zero_neq_Suc
thf(fact_2921_Suc__neq__Zero,axiom,
    ! [M: nat] :
      ( ( suc @ M )
     != zero_zero_nat ) ).

% Suc_neq_Zero
thf(fact_2922_zero__induct,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( P @ K )
     => ( ! [N2: nat] :
            ( ( P @ ( suc @ N2 ) )
           => ( P @ N2 ) )
       => ( P @ zero_zero_nat ) ) ) ).

% zero_induct
thf(fact_2923_diff__induct,axiom,
    ! [P: nat > nat > $o,M: nat,N: nat] :
      ( ! [X5: nat] : ( P @ X5 @ zero_zero_nat )
     => ( ! [Y4: nat] : ( P @ zero_zero_nat @ ( suc @ Y4 ) )
       => ( ! [X5: nat,Y4: nat] :
              ( ( P @ X5 @ Y4 )
             => ( P @ ( suc @ X5 ) @ ( suc @ Y4 ) ) )
         => ( P @ M @ N ) ) ) ) ).

% diff_induct
thf(fact_2924_nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( P @ N2 )
           => ( P @ ( suc @ N2 ) ) )
       => ( P @ N ) ) ) ).

% nat_induct
thf(fact_2925_old_Onat_Oexhaust,axiom,
    ! [Y3: nat] :
      ( ( Y3 != zero_zero_nat )
     => ~ ! [Nat3: nat] :
            ( Y3
           != ( suc @ Nat3 ) ) ) ).

% old.nat.exhaust
thf(fact_2926_nat_OdiscI,axiom,
    ! [Nat: nat,X2: nat] :
      ( ( Nat
        = ( suc @ X2 ) )
     => ( Nat != zero_zero_nat ) ) ).

% nat.discI
thf(fact_2927_old_Onat_Odistinct_I1_J,axiom,
    ! [Nat2: nat] :
      ( zero_zero_nat
     != ( suc @ Nat2 ) ) ).

% old.nat.distinct(1)
thf(fact_2928_old_Onat_Odistinct_I2_J,axiom,
    ! [Nat2: nat] :
      ( ( suc @ Nat2 )
     != zero_zero_nat ) ).

% old.nat.distinct(2)
thf(fact_2929_nat_Odistinct_I1_J,axiom,
    ! [X2: nat] :
      ( zero_zero_nat
     != ( suc @ X2 ) ) ).

% nat.distinct(1)
thf(fact_2930_exists__least__lemma,axiom,
    ! [P: nat > $o] :
      ( ~ ( P @ zero_zero_nat )
     => ( ? [X_1: nat] : ( P @ X_1 )
       => ? [N2: nat] :
            ( ~ ( P @ N2 )
            & ( P @ ( suc @ N2 ) ) ) ) ) ).

% exists_least_lemma
thf(fact_2931_not__less__less__Suc__eq,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
        = ( N = M ) ) ) ).

% not_less_less_Suc_eq
thf(fact_2932_strict__inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I3: nat] :
            ( ( J
              = ( suc @ I3 ) )
           => ( P @ I3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ J )
             => ( ( P @ ( suc @ I3 ) )
               => ( P @ I3 ) ) )
         => ( P @ I ) ) ) ) ).

% strict_inc_induct
thf(fact_2933_less__Suc__induct,axiom,
    ! [I: nat,J: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I3: nat] : ( P @ I3 @ ( suc @ I3 ) )
       => ( ! [I3: nat,J2: nat,K2: nat] :
              ( ( ord_less_nat @ I3 @ J2 )
             => ( ( ord_less_nat @ J2 @ K2 )
               => ( ( P @ I3 @ J2 )
                 => ( ( P @ J2 @ K2 )
                   => ( P @ I3 @ K2 ) ) ) ) )
         => ( P @ I @ J ) ) ) ) ).

% less_Suc_induct
thf(fact_2934_less__trans__Suc,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ J @ K )
       => ( ord_less_nat @ ( suc @ I ) @ K ) ) ) ).

% less_trans_Suc
thf(fact_2935_Suc__less__SucD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_less_SucD
thf(fact_2936_less__antisym,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
       => ( M = N ) ) ) ).

% less_antisym
thf(fact_2937_Suc__less__eq2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( suc @ N ) @ M )
      = ( ? [M6: nat] :
            ( ( M
              = ( suc @ M6 ) )
            & ( ord_less_nat @ N @ M6 ) ) ) ) ).

% Suc_less_eq2
thf(fact_2938_All__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
           => ( P @ I2 ) ) )
      = ( ( P @ N )
        & ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
           => ( P @ I2 ) ) ) ) ).

% All_less_Suc
thf(fact_2939_not__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M ) ) ) ).

% not_less_eq
thf(fact_2940_less__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( ord_less_nat @ M @ N )
        | ( M = N ) ) ) ).

% less_Suc_eq
thf(fact_2941_Ex__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
            & ( P @ I2 ) ) )
      = ( ( P @ N )
        | ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
            & ( P @ I2 ) ) ) ) ).

% Ex_less_Suc
thf(fact_2942_less__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% less_SucI
thf(fact_2943_less__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( M = N ) ) ) ).

% less_SucE
thf(fact_2944_Suc__lessI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ( suc @ M )
         != N )
       => ( ord_less_nat @ ( suc @ M ) @ N ) ) ) ).

% Suc_lessI
thf(fact_2945_Suc__lessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I ) @ K )
     => ~ ! [J2: nat] :
            ( ( ord_less_nat @ I @ J2 )
           => ( K
             != ( suc @ J2 ) ) ) ) ).

% Suc_lessE
thf(fact_2946_Suc__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_lessD
thf(fact_2947_Nat_OlessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ I @ K )
     => ( ( K
         != ( suc @ I ) )
       => ~ ! [J2: nat] :
              ( ( ord_less_nat @ I @ J2 )
             => ( K
               != ( suc @ J2 ) ) ) ) ) ).

% Nat.lessE
thf(fact_2948_transitive__stepwise__le,axiom,
    ! [M: nat,N: nat,R5: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ! [X5: nat] : ( R5 @ X5 @ X5 )
       => ( ! [X5: nat,Y4: nat,Z6: nat] :
              ( ( R5 @ X5 @ Y4 )
             => ( ( R5 @ Y4 @ Z6 )
               => ( R5 @ X5 @ Z6 ) ) )
         => ( ! [N2: nat] : ( R5 @ N2 @ ( suc @ N2 ) )
           => ( R5 @ M @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_2949_nat__induct__at__least,axiom,
    ! [M: nat,N: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( P @ M )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ M @ N2 )
             => ( ( P @ N2 )
               => ( P @ ( suc @ N2 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_at_least
thf(fact_2950_full__nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ! [M3: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M3 ) @ N2 )
             => ( P @ M3 ) )
         => ( P @ N2 ) )
     => ( P @ N ) ) ).

% full_nat_induct
thf(fact_2951_not__less__eq__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_eq_nat @ M @ N ) )
      = ( ord_less_eq_nat @ ( suc @ N ) @ M ) ) ).

% not_less_eq_eq
thf(fact_2952_Suc__n__not__le__n,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_nat @ ( suc @ N ) @ N ) ).

% Suc_n_not_le_n
thf(fact_2953_le__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
      = ( ( ord_less_eq_nat @ M @ N )
        | ( M
          = ( suc @ N ) ) ) ) ).

% le_Suc_eq
thf(fact_2954_Suc__le__D,axiom,
    ! [N: nat,M7: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M7 )
     => ? [M4: nat] :
          ( M7
          = ( suc @ M4 ) ) ) ).

% Suc_le_D
thf(fact_2955_le__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ ( suc @ N ) ) ) ).

% le_SucI
thf(fact_2956_le__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_eq_nat @ M @ N )
       => ( M
          = ( suc @ N ) ) ) ) ).

% le_SucE
thf(fact_2957_Suc__leD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% Suc_leD
thf(fact_2958_add__Suc__shift,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).

% add_Suc_shift
thf(fact_2959_add__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc
thf(fact_2960_nat__arith_Osuc1,axiom,
    ! [A3: nat,K: nat,A: nat] :
      ( ( A3
        = ( plus_plus_nat @ K @ A ) )
     => ( ( suc @ A3 )
        = ( plus_plus_nat @ K @ ( suc @ A ) ) ) ) ).

% nat_arith.suc1
thf(fact_2961_zero__induct__lemma,axiom,
    ! [P: nat > $o,K: nat,I: nat] :
      ( ( P @ K )
     => ( ! [N2: nat] :
            ( ( P @ ( suc @ N2 ) )
           => ( P @ N2 ) )
       => ( P @ ( minus_minus_nat @ K @ I ) ) ) ) ).

% zero_induct_lemma
thf(fact_2962_Suc__mult__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ ( suc @ K ) @ M )
        = ( times_times_nat @ ( suc @ K ) @ N ) )
      = ( M = N ) ) ).

% Suc_mult_cancel1
thf(fact_2963_fact__less__mono__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ( ord_less_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) ) ) ) ).

% fact_less_mono_nat
thf(fact_2964_fact__ge__zero,axiom,
    ! [N: nat] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( semiri3624122377584611663nteger @ N ) ) ).

% fact_ge_zero
thf(fact_2965_fact__ge__zero,axiom,
    ! [N: nat] : ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( semiri2447717529341329178atural @ N ) ) ).

% fact_ge_zero
thf(fact_2966_fact__ge__zero,axiom,
    ! [N: nat] : ( ord_less_eq_rat @ zero_zero_rat @ ( semiri773545260158071498ct_rat @ N ) ) ).

% fact_ge_zero
thf(fact_2967_fact__ge__zero,axiom,
    ! [N: nat] : ( ord_less_eq_int @ zero_zero_int @ ( semiri1406184849735516958ct_int @ N ) ) ).

% fact_ge_zero
thf(fact_2968_fact__ge__zero,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_ge_zero
thf(fact_2969_fact__not__neg,axiom,
    ! [N: nat] :
      ~ ( ord_le6747313008572928689nteger @ ( semiri3624122377584611663nteger @ N ) @ zero_z3403309356797280102nteger ) ).

% fact_not_neg
thf(fact_2970_fact__not__neg,axiom,
    ! [N: nat] :
      ~ ( ord_le5570908160329646204atural @ ( semiri2447717529341329178atural @ N ) @ zero_z2226904508553997617atural ) ).

% fact_not_neg
thf(fact_2971_fact__not__neg,axiom,
    ! [N: nat] :
      ~ ( ord_less_rat @ ( semiri773545260158071498ct_rat @ N ) @ zero_zero_rat ) ).

% fact_not_neg
thf(fact_2972_fact__not__neg,axiom,
    ! [N: nat] :
      ~ ( ord_less_int @ ( semiri1406184849735516958ct_int @ N ) @ zero_zero_int ) ).

% fact_not_neg
thf(fact_2973_fact__not__neg,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ ( semiri1408675320244567234ct_nat @ N ) @ zero_zero_nat ) ).

% fact_not_neg
thf(fact_2974_fact__gt__zero,axiom,
    ! [N: nat] : ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( semiri3624122377584611663nteger @ N ) ) ).

% fact_gt_zero
thf(fact_2975_fact__gt__zero,axiom,
    ! [N: nat] : ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( semiri2447717529341329178atural @ N ) ) ).

% fact_gt_zero
thf(fact_2976_fact__gt__zero,axiom,
    ! [N: nat] : ( ord_less_rat @ zero_zero_rat @ ( semiri773545260158071498ct_rat @ N ) ) ).

% fact_gt_zero
thf(fact_2977_fact__gt__zero,axiom,
    ! [N: nat] : ( ord_less_int @ zero_zero_int @ ( semiri1406184849735516958ct_int @ N ) ) ).

% fact_gt_zero
thf(fact_2978_fact__gt__zero,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_gt_zero
thf(fact_2979_fact__ge__1,axiom,
    ! [N: nat] : ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( semiri3624122377584611663nteger @ N ) ) ).

% fact_ge_1
thf(fact_2980_fact__ge__1,axiom,
    ! [N: nat] : ( ord_le1926595141338095240atural @ one_one_Code_natural @ ( semiri2447717529341329178atural @ N ) ) ).

% fact_ge_1
thf(fact_2981_fact__ge__1,axiom,
    ! [N: nat] : ( ord_less_eq_rat @ one_one_rat @ ( semiri773545260158071498ct_rat @ N ) ) ).

% fact_ge_1
thf(fact_2982_fact__ge__1,axiom,
    ! [N: nat] : ( ord_less_eq_int @ one_one_int @ ( semiri1406184849735516958ct_int @ N ) ) ).

% fact_ge_1
thf(fact_2983_fact__ge__1,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ one_one_nat @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_ge_1
thf(fact_2984_lift__Suc__mono__le,axiom,
    ! [F: nat > set_nat,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_eq_set_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ord_less_eq_set_nat @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_2985_lift__Suc__mono__le,axiom,
    ! [F: nat > rat,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_eq_rat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ord_less_eq_rat @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_2986_lift__Suc__mono__le,axiom,
    ! [F: nat > num,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_eq_num @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ord_less_eq_num @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_2987_lift__Suc__mono__le,axiom,
    ! [F: nat > nat,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_eq_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ord_less_eq_nat @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_2988_lift__Suc__mono__le,axiom,
    ! [F: nat > int,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_eq_int @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ord_less_eq_int @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_2989_lift__Suc__antimono__le,axiom,
    ! [F: nat > set_nat,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_eq_set_nat @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ord_less_eq_set_nat @ ( F @ N3 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_2990_lift__Suc__antimono__le,axiom,
    ! [F: nat > rat,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_eq_rat @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ord_less_eq_rat @ ( F @ N3 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_2991_lift__Suc__antimono__le,axiom,
    ! [F: nat > num,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_eq_num @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ord_less_eq_num @ ( F @ N3 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_2992_lift__Suc__antimono__le,axiom,
    ! [F: nat > nat,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_eq_nat @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ord_less_eq_nat @ ( F @ N3 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_2993_lift__Suc__antimono__le,axiom,
    ! [F: nat > int,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_eq_int @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N3 )
       => ( ord_less_eq_int @ ( F @ N3 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_2994_lift__Suc__mono__less,axiom,
    ! [F: nat > literal,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_literal @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N3 )
       => ( ord_less_literal @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_2995_lift__Suc__mono__less,axiom,
    ! [F: nat > rat,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_rat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N3 )
       => ( ord_less_rat @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_2996_lift__Suc__mono__less,axiom,
    ! [F: nat > num,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_num @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N3 )
       => ( ord_less_num @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_2997_lift__Suc__mono__less,axiom,
    ! [F: nat > nat,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N3 )
       => ( ord_less_nat @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_2998_lift__Suc__mono__less,axiom,
    ! [F: nat > int,N: nat,N3: nat] :
      ( ! [N2: nat] : ( ord_less_int @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N3 )
       => ( ord_less_int @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_2999_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > literal,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_literal @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_literal @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_3000_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > rat,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_rat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_rat @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_3001_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > num,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_num @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_num @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_3002_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > nat,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_3003_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > int,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_int @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_int @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_3004_of__nat__neq__0,axiom,
    ! [N: nat] :
      ( ( semiri4939895301339042750nteger @ ( suc @ N ) )
     != zero_z3403309356797280102nteger ) ).

% of_nat_neq_0
thf(fact_3005_of__nat__neq__0,axiom,
    ! [N: nat] :
      ( ( semiri681578069525770553at_rat @ ( suc @ N ) )
     != zero_zero_rat ) ).

% of_nat_neq_0
thf(fact_3006_of__nat__neq__0,axiom,
    ! [N: nat] :
      ( ( semiri3763490453095760265atural @ ( suc @ N ) )
     != zero_z2226904508553997617atural ) ).

% of_nat_neq_0
thf(fact_3007_of__nat__neq__0,axiom,
    ! [N: nat] :
      ( ( semiri1314217659103216013at_int @ ( suc @ N ) )
     != zero_zero_int ) ).

% of_nat_neq_0
thf(fact_3008_of__nat__neq__0,axiom,
    ! [N: nat] :
      ( ( semiri1316708129612266289at_nat @ ( suc @ N ) )
     != zero_zero_nat ) ).

% of_nat_neq_0
thf(fact_3009_Ex__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
            & ( P @ I2 ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
            & ( P @ ( suc @ I2 ) ) ) ) ) ).

% Ex_less_Suc2
thf(fact_3010_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M5: nat] :
            ( N
            = ( suc @ M5 ) ) ) ) ).

% gr0_conv_Suc
thf(fact_3011_All__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
           => ( P @ I2 ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
           => ( P @ ( suc @ I2 ) ) ) ) ) ).

% All_less_Suc2
thf(fact_3012_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M4: nat] :
          ( N
          = ( suc @ M4 ) ) ) ).

% gr0_implies_Suc
thf(fact_3013_less__Suc__eq__0__disj,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( M = zero_zero_nat )
        | ? [J3: nat] :
            ( ( M
              = ( suc @ J3 ) )
            & ( ord_less_nat @ J3 @ N ) ) ) ) ).

% less_Suc_eq_0_disj
thf(fact_3014_one__is__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( plus_plus_nat @ M @ N ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% one_is_add
thf(fact_3015_add__is__1,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% add_is_1
thf(fact_3016_le__imp__less__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% le_imp_less_Suc
thf(fact_3017_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N5: nat] : ( ord_less_eq_nat @ ( suc @ N5 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_3018_less__Suc__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% less_Suc_eq_le
thf(fact_3019_le__less__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
        = ( N = M ) ) ) ).

% le_less_Suc_eq
thf(fact_3020_Suc__le__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_le_lessD
thf(fact_3021_inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ J )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ I @ N2 )
             => ( ( ord_less_nat @ N2 @ J )
               => ( ( P @ ( suc @ N2 ) )
                 => ( P @ N2 ) ) ) )
         => ( P @ I ) ) ) ) ).

% inc_induct
thf(fact_3022_dec__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ I )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ I @ N2 )
             => ( ( ord_less_nat @ N2 @ J )
               => ( ( P @ N2 )
                 => ( P @ ( suc @ N2 ) ) ) ) )
         => ( P @ J ) ) ) ) ).

% dec_induct
thf(fact_3023_Suc__le__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_le_eq
thf(fact_3024_Suc__leI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ ( suc @ M ) @ N ) ) ).

% Suc_leI
thf(fact_3025_less__natE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ~ ! [Q3: nat] :
            ( N
           != ( suc @ ( plus_plus_nat @ M @ Q3 ) ) ) ) ).

% less_natE
thf(fact_3026_less__add__Suc1,axiom,
    ! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ I @ M ) ) ) ).

% less_add_Suc1
thf(fact_3027_less__add__Suc2,axiom,
    ! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ M @ I ) ) ) ).

% less_add_Suc2
thf(fact_3028_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M5: nat,N5: nat] :
        ? [K3: nat] :
          ( N5
          = ( suc @ ( plus_plus_nat @ M5 @ K3 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_3029_less__imp__Suc__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ? [K2: nat] :
          ( N
          = ( suc @ ( plus_plus_nat @ M @ K2 ) ) ) ) ).

% less_imp_Suc_add
thf(fact_3030_diff__less__Suc,axiom,
    ! [M: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ ( suc @ M ) ) ).

% diff_less_Suc
thf(fact_3031_Suc__diff__Suc,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( ( suc @ ( minus_minus_nat @ M @ ( suc @ N ) ) )
        = ( minus_minus_nat @ M @ N ) ) ) ).

% Suc_diff_Suc
thf(fact_3032_Suc__mult__less__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ ( suc @ K ) @ M ) @ ( times_times_nat @ ( suc @ K ) @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_mult_less_cancel1
thf(fact_3033_Suc__diff__le,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( minus_minus_nat @ ( suc @ M ) @ N )
        = ( suc @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% Suc_diff_le
thf(fact_3034_One__nat__def,axiom,
    ( one_one_nat
    = ( suc @ zero_zero_nat ) ) ).

% One_nat_def
thf(fact_3035_Suc__mult__le__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ ( suc @ K ) @ M ) @ ( times_times_nat @ ( suc @ K ) @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% Suc_mult_le_cancel1
thf(fact_3036_mult__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( times_times_nat @ ( suc @ M ) @ N )
      = ( plus_plus_nat @ N @ ( times_times_nat @ M @ N ) ) ) ).

% mult_Suc
thf(fact_3037_Suc__eq__plus1__left,axiom,
    ( suc
    = ( plus_plus_nat @ one_one_nat ) ) ).

% Suc_eq_plus1_left
thf(fact_3038_plus__1__eq__Suc,axiom,
    ( ( plus_plus_nat @ one_one_nat )
    = suc ) ).

% plus_1_eq_Suc
thf(fact_3039_Suc__eq__plus1,axiom,
    ( suc
    = ( ^ [N5: nat] : ( plus_plus_nat @ N5 @ one_one_nat ) ) ) ).

% Suc_eq_plus1
thf(fact_3040_diff__Suc__eq__diff__pred,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ M @ ( suc @ N ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ one_one_nat ) @ N ) ) ).

% diff_Suc_eq_diff_pred
thf(fact_3041_int__cases,axiom,
    ! [Z: int] :
      ( ! [N2: nat] :
          ( Z
         != ( semiri1314217659103216013at_int @ N2 ) )
     => ~ ! [N2: nat] :
            ( Z
           != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N2 ) ) ) ) ) ).

% int_cases
thf(fact_3042_int__of__nat__induct,axiom,
    ! [P: int > $o,Z: int] :
      ( ! [N2: nat] : ( P @ ( semiri1314217659103216013at_int @ N2 ) )
     => ( ! [N2: nat] : ( P @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N2 ) ) ) )
       => ( P @ Z ) ) ) ).

% int_of_nat_induct
thf(fact_3043_pochhammer__fact,axiom,
    ( semiri1406184849735516958ct_int
    = ( comm_s4660882817536571857er_int @ one_one_int ) ) ).

% pochhammer_fact
thf(fact_3044_pochhammer__fact,axiom,
    ( semiri3624122377584611663nteger
    = ( comm_s8582702949713902594nteger @ one_one_Code_integer ) ) ).

% pochhammer_fact
thf(fact_3045_pochhammer__fact,axiom,
    ( semiri773545260158071498ct_rat
    = ( comm_s4028243227959126397er_rat @ one_one_rat ) ) ).

% pochhammer_fact
thf(fact_3046_pochhammer__fact,axiom,
    ( semiri2447717529341329178atural
    = ( comm_s7406298101470620109atural @ one_one_Code_natural ) ) ).

% pochhammer_fact
thf(fact_3047_pochhammer__fact,axiom,
    ( semiri1408675320244567234ct_nat
    = ( comm_s4663373288045622133er_nat @ one_one_nat ) ) ).

% pochhammer_fact
thf(fact_3048_power__le__imp__le__base,axiom,
    ! [A: code_integer,N: nat,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ ( suc @ N ) ) @ ( power_8256067586552552935nteger @ B @ ( suc @ N ) ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le3102999989581377725nteger @ A @ B ) ) ) ).

% power_le_imp_le_base
thf(fact_3049_power__le__imp__le__base,axiom,
    ! [A: code_natural,N: nat,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ ( suc @ N ) ) @ ( power_7079662738309270450atural @ B @ ( suc @ N ) ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le1926595141338095240atural @ A @ B ) ) ) ).

% power_le_imp_le_base
thf(fact_3050_power__le__imp__le__base,axiom,
    ! [A: rat,N: nat,B: rat] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ A @ ( suc @ N ) ) @ ( power_power_rat @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_rat @ A @ B ) ) ) ).

% power_le_imp_le_base
thf(fact_3051_power__le__imp__le__base,axiom,
    ! [A: nat,N: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ A @ ( suc @ N ) ) @ ( power_power_nat @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ A @ B ) ) ) ).

% power_le_imp_le_base
thf(fact_3052_power__le__imp__le__base,axiom,
    ! [A: int,N: nat,B: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ A @ ( suc @ N ) ) @ ( power_power_int @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ A @ B ) ) ) ).

% power_le_imp_le_base
thf(fact_3053_power__inject__base,axiom,
    ! [A: code_integer,N: nat,B: code_integer] :
      ( ( ( power_8256067586552552935nteger @ A @ ( suc @ N ) )
        = ( power_8256067586552552935nteger @ B @ ( suc @ N ) ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
         => ( A = B ) ) ) ) ).

% power_inject_base
thf(fact_3054_power__inject__base,axiom,
    ! [A: code_natural,N: nat,B: code_natural] :
      ( ( ( power_7079662738309270450atural @ A @ ( suc @ N ) )
        = ( power_7079662738309270450atural @ B @ ( suc @ N ) ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
         => ( A = B ) ) ) ) ).

% power_inject_base
thf(fact_3055_power__inject__base,axiom,
    ! [A: rat,N: nat,B: rat] :
      ( ( ( power_power_rat @ A @ ( suc @ N ) )
        = ( power_power_rat @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
         => ( A = B ) ) ) ) ).

% power_inject_base
thf(fact_3056_power__inject__base,axiom,
    ! [A: nat,N: nat,B: nat] :
      ( ( ( power_power_nat @ A @ ( suc @ N ) )
        = ( power_power_nat @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
         => ( A = B ) ) ) ) ).

% power_inject_base
thf(fact_3057_power__inject__base,axiom,
    ! [A: int,N: nat,B: int] :
      ( ( ( power_power_int @ A @ ( suc @ N ) )
        = ( power_power_int @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ( ord_less_eq_int @ zero_zero_int @ B )
         => ( A = B ) ) ) ) ).

% power_inject_base
thf(fact_3058_power__gt1,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ A @ ( suc @ N ) ) ) ) ).

% power_gt1
thf(fact_3059_power__gt1,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ord_le5570908160329646204atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ A @ ( suc @ N ) ) ) ) ).

% power_gt1
thf(fact_3060_power__gt1,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ord_less_rat @ one_one_rat @ ( power_power_rat @ A @ ( suc @ N ) ) ) ) ).

% power_gt1
thf(fact_3061_power__gt1,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ord_less_nat @ one_one_nat @ ( power_power_nat @ A @ ( suc @ N ) ) ) ) ).

% power_gt1
thf(fact_3062_power__gt1,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ord_less_int @ one_one_int @ ( power_power_int @ A @ ( suc @ N ) ) ) ) ).

% power_gt1
thf(fact_3063_ceiling__add__le,axiom,
    ! [X: rat,Y3: rat] : ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ ( plus_plus_rat @ X @ Y3 ) ) @ ( plus_plus_int @ ( archim2889992004027027881ng_rat @ X ) @ ( archim2889992004027027881ng_rat @ Y3 ) ) ) ).

% ceiling_add_le
thf(fact_3064_fact__less__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ( ord_less_rat @ ( semiri773545260158071498ct_rat @ M ) @ ( semiri773545260158071498ct_rat @ N ) ) ) ) ).

% fact_less_mono
thf(fact_3065_fact__less__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ( ord_less_int @ ( semiri1406184849735516958ct_int @ M ) @ ( semiri1406184849735516958ct_int @ N ) ) ) ) ).

% fact_less_mono
thf(fact_3066_fact__less__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ( ord_less_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) ) ) ) ).

% fact_less_mono
thf(fact_3067_ex__least__nat__less,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_nat @ K2 @ N )
            & ! [I4: nat] :
                ( ( ord_less_eq_nat @ I4 @ K2 )
               => ~ ( P @ I4 ) )
            & ( P @ ( suc @ K2 ) ) ) ) ) ).

% ex_least_nat_less
thf(fact_3068_diff__Suc__less,axiom,
    ! [N: nat,I: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( minus_minus_nat @ N @ ( suc @ I ) ) @ N ) ) ).

% diff_Suc_less
thf(fact_3069_n__less__n__mult__m,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
       => ( ord_less_nat @ N @ ( times_times_nat @ N @ M ) ) ) ) ).

% n_less_n_mult_m
thf(fact_3070_n__less__m__mult__n,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
       => ( ord_less_nat @ N @ ( times_times_nat @ M @ N ) ) ) ) ).

% n_less_m_mult_n
thf(fact_3071_one__less__mult,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
       => ( ord_less_nat @ ( suc @ zero_zero_nat ) @ ( times_times_nat @ M @ N ) ) ) ) ).

% one_less_mult
thf(fact_3072_nat__induct__non__zero,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( P @ one_one_nat )
       => ( ! [N2: nat] :
              ( ( ord_less_nat @ zero_zero_nat @ N2 )
             => ( ( P @ N2 )
               => ( P @ ( suc @ N2 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_non_zero
thf(fact_3073_power__gt__expt,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ord_less_nat @ K @ ( power_power_nat @ N @ K ) ) ) ).

% power_gt_expt
thf(fact_3074_nat__one__le__power,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ I )
     => ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( power_power_nat @ I @ N ) ) ) ).

% nat_one_le_power
thf(fact_3075_zless__iff__Suc__zadd,axiom,
    ( ord_less_int
    = ( ^ [W2: int,Z3: int] :
        ? [N5: nat] :
          ( Z3
          = ( plus_plus_int @ W2 @ ( semiri1314217659103216013at_int @ ( suc @ N5 ) ) ) ) ) ) ).

% zless_iff_Suc_zadd
thf(fact_3076_int__Suc,axiom,
    ! [N: nat] :
      ( ( semiri1314217659103216013at_int @ ( suc @ N ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) ) ).

% int_Suc
thf(fact_3077_int__ops_I4_J,axiom,
    ! [A: nat] :
      ( ( semiri1314217659103216013at_int @ ( suc @ A ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ A ) @ one_one_int ) ) ).

% int_ops(4)
thf(fact_3078_power__Suc__le__self,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer )
       => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ ( suc @ N ) ) @ A ) ) ) ).

% power_Suc_le_self
thf(fact_3079_power__Suc__le__self,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ A @ one_one_Code_natural )
       => ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ ( suc @ N ) ) @ A ) ) ) ).

% power_Suc_le_self
thf(fact_3080_power__Suc__le__self,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ A @ one_one_rat )
       => ( ord_less_eq_rat @ ( power_power_rat @ A @ ( suc @ N ) ) @ A ) ) ) ).

% power_Suc_le_self
thf(fact_3081_power__Suc__le__self,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ A @ one_one_nat )
       => ( ord_less_eq_nat @ ( power_power_nat @ A @ ( suc @ N ) ) @ A ) ) ) ).

% power_Suc_le_self
thf(fact_3082_power__Suc__le__self,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ A @ one_one_int )
       => ( ord_less_eq_int @ ( power_power_int @ A @ ( suc @ N ) ) @ A ) ) ) ).

% power_Suc_le_self
thf(fact_3083_power__Suc__less__one,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ A @ one_one_Code_integer )
       => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ ( suc @ N ) ) @ one_one_Code_integer ) ) ) ).

% power_Suc_less_one
thf(fact_3084_power__Suc__less__one,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ A @ one_one_Code_natural )
       => ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ ( suc @ N ) ) @ one_one_Code_natural ) ) ) ).

% power_Suc_less_one
thf(fact_3085_power__Suc__less__one,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ A @ one_one_rat )
       => ( ord_less_rat @ ( power_power_rat @ A @ ( suc @ N ) ) @ one_one_rat ) ) ) ).

% power_Suc_less_one
thf(fact_3086_power__Suc__less__one,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ A @ one_one_nat )
       => ( ord_less_nat @ ( power_power_nat @ A @ ( suc @ N ) ) @ one_one_nat ) ) ) ).

% power_Suc_less_one
thf(fact_3087_power__Suc__less__one,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ A @ one_one_int )
       => ( ord_less_int @ ( power_power_int @ A @ ( suc @ N ) ) @ one_one_int ) ) ) ).

% power_Suc_less_one
thf(fact_3088_Suc__diff__eq__diff__pred,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( minus_minus_nat @ ( suc @ M ) @ N )
        = ( minus_minus_nat @ M @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_diff_eq_diff_pred
thf(fact_3089_Suc__pred_H,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( N
        = ( suc @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_pred'
thf(fact_3090_pochhammer__rec,axiom,
    ! [A: code_natural,N: nat] :
      ( ( comm_s7406298101470620109atural @ A @ ( suc @ N ) )
      = ( times_2397367101498566445atural @ A @ ( comm_s7406298101470620109atural @ ( plus_p4538020629002901425atural @ A @ one_one_Code_natural ) @ N ) ) ) ).

% pochhammer_rec
thf(fact_3091_pochhammer__rec,axiom,
    ! [A: nat,N: nat] :
      ( ( comm_s4663373288045622133er_nat @ A @ ( suc @ N ) )
      = ( times_times_nat @ A @ ( comm_s4663373288045622133er_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ N ) ) ) ).

% pochhammer_rec
thf(fact_3092_pochhammer__rec,axiom,
    ! [A: int,N: nat] :
      ( ( comm_s4660882817536571857er_int @ A @ ( suc @ N ) )
      = ( times_times_int @ A @ ( comm_s4660882817536571857er_int @ ( plus_plus_int @ A @ one_one_int ) @ N ) ) ) ).

% pochhammer_rec
thf(fact_3093_pochhammer__rec,axiom,
    ! [A: code_integer,N: nat] :
      ( ( comm_s8582702949713902594nteger @ A @ ( suc @ N ) )
      = ( times_3573771949741848930nteger @ A @ ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ A @ one_one_Code_integer ) @ N ) ) ) ).

% pochhammer_rec
thf(fact_3094_pochhammer__rec,axiom,
    ! [A: rat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ A @ ( suc @ N ) )
      = ( times_times_rat @ A @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ N ) ) ) ).

% pochhammer_rec
thf(fact_3095_add__eq__if,axiom,
    ( plus_plus_nat
    = ( ^ [M5: nat,N5: nat] : ( if_nat @ ( M5 = zero_zero_nat ) @ N5 @ ( suc @ ( plus_plus_nat @ ( minus_minus_nat @ M5 @ one_one_nat ) @ N5 ) ) ) ) ) ).

% add_eq_if
thf(fact_3096_pochhammer__rec_H,axiom,
    ! [Z: code_integer,N: nat] :
      ( ( comm_s8582702949713902594nteger @ Z @ ( suc @ N ) )
      = ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ Z @ ( semiri4939895301339042750nteger @ N ) ) @ ( comm_s8582702949713902594nteger @ Z @ N ) ) ) ).

% pochhammer_rec'
thf(fact_3097_pochhammer__rec_H,axiom,
    ! [Z: rat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ Z @ ( suc @ N ) )
      = ( times_times_rat @ ( plus_plus_rat @ Z @ ( semiri681578069525770553at_rat @ N ) ) @ ( comm_s4028243227959126397er_rat @ Z @ N ) ) ) ).

% pochhammer_rec'
thf(fact_3098_pochhammer__rec_H,axiom,
    ! [Z: int,N: nat] :
      ( ( comm_s4660882817536571857er_int @ Z @ ( suc @ N ) )
      = ( times_times_int @ ( plus_plus_int @ Z @ ( semiri1314217659103216013at_int @ N ) ) @ ( comm_s4660882817536571857er_int @ Z @ N ) ) ) ).

% pochhammer_rec'
thf(fact_3099_pochhammer__rec_H,axiom,
    ! [Z: nat,N: nat] :
      ( ( comm_s4663373288045622133er_nat @ Z @ ( suc @ N ) )
      = ( times_times_nat @ ( plus_plus_nat @ Z @ ( semiri1316708129612266289at_nat @ N ) ) @ ( comm_s4663373288045622133er_nat @ Z @ N ) ) ) ).

% pochhammer_rec'
thf(fact_3100_pochhammer__Suc,axiom,
    ! [A: code_integer,N: nat] :
      ( ( comm_s8582702949713902594nteger @ A @ ( suc @ N ) )
      = ( times_3573771949741848930nteger @ ( comm_s8582702949713902594nteger @ A @ N ) @ ( plus_p5714425477246183910nteger @ A @ ( semiri4939895301339042750nteger @ N ) ) ) ) ).

% pochhammer_Suc
thf(fact_3101_pochhammer__Suc,axiom,
    ! [A: rat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ A @ ( suc @ N ) )
      = ( times_times_rat @ ( comm_s4028243227959126397er_rat @ A @ N ) @ ( plus_plus_rat @ A @ ( semiri681578069525770553at_rat @ N ) ) ) ) ).

% pochhammer_Suc
thf(fact_3102_pochhammer__Suc,axiom,
    ! [A: int,N: nat] :
      ( ( comm_s4660882817536571857er_int @ A @ ( suc @ N ) )
      = ( times_times_int @ ( comm_s4660882817536571857er_int @ A @ N ) @ ( plus_plus_int @ A @ ( semiri1314217659103216013at_int @ N ) ) ) ) ).

% pochhammer_Suc
thf(fact_3103_pochhammer__Suc,axiom,
    ! [A: nat,N: nat] :
      ( ( comm_s4663373288045622133er_nat @ A @ ( suc @ N ) )
      = ( times_times_nat @ ( comm_s4663373288045622133er_nat @ A @ N ) @ ( plus_plus_nat @ A @ ( semiri1316708129612266289at_nat @ N ) ) ) ) ).

% pochhammer_Suc
thf(fact_3104_not__zle__0__negative,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_int @ zero_zero_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N ) ) ) ) ).

% not_zle_0_negative
thf(fact_3105_negative__zless__0,axiom,
    ! [N: nat] : ( ord_less_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N ) ) ) @ zero_zero_int ) ).

% negative_zless_0
thf(fact_3106_negD,axiom,
    ! [X: int] :
      ( ( ord_less_int @ X @ zero_zero_int )
     => ? [N2: nat] :
          ( X
          = ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N2 ) ) ) ) ) ).

% negD
thf(fact_3107_Suc__as__int,axiom,
    ( suc
    = ( ^ [A4: nat] : ( nat2 @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ A4 ) @ one_one_int ) ) ) ) ).

% Suc_as_int
thf(fact_3108_ceiling__correct,axiom,
    ! [X: rat] :
      ( ( ord_less_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ X ) ) @ one_one_rat ) @ X )
      & ( ord_less_eq_rat @ X @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ X ) ) ) ) ).

% ceiling_correct
thf(fact_3109_ceiling__unique,axiom,
    ! [Z: int,X: rat] :
      ( ( ord_less_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ Z ) @ one_one_rat ) @ X )
     => ( ( ord_less_eq_rat @ X @ ( ring_1_of_int_rat @ Z ) )
       => ( ( archim2889992004027027881ng_rat @ X )
          = Z ) ) ) ).

% ceiling_unique
thf(fact_3110_ceiling__eq__iff,axiom,
    ! [X: rat,A: int] :
      ( ( ( archim2889992004027027881ng_rat @ X )
        = A )
      = ( ( ord_less_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ A ) @ one_one_rat ) @ X )
        & ( ord_less_eq_rat @ X @ ( ring_1_of_int_rat @ A ) ) ) ) ).

% ceiling_eq_iff
thf(fact_3111_ceiling__split,axiom,
    ! [P: int > $o,T: rat] :
      ( ( P @ ( archim2889992004027027881ng_rat @ T ) )
      = ( ! [I2: int] :
            ( ( ( ord_less_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ I2 ) @ one_one_rat ) @ T )
              & ( ord_less_eq_rat @ T @ ( ring_1_of_int_rat @ I2 ) ) )
           => ( P @ I2 ) ) ) ) ).

% ceiling_split
thf(fact_3112_mult__ceiling__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ ( times_times_rat @ A @ B ) ) @ ( times_times_int @ ( archim2889992004027027881ng_rat @ A ) @ ( archim2889992004027027881ng_rat @ B ) ) ) ) ) ).

% mult_ceiling_le
thf(fact_3113_ceiling__less__iff,axiom,
    ! [X: rat,Z: int] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X ) @ Z )
      = ( ord_less_eq_rat @ X @ ( minus_minus_rat @ ( ring_1_of_int_rat @ Z ) @ one_one_rat ) ) ) ).

% ceiling_less_iff
thf(fact_3114_le__ceiling__iff,axiom,
    ! [Z: int,X: rat] :
      ( ( ord_less_eq_int @ Z @ ( archim2889992004027027881ng_rat @ X ) )
      = ( ord_less_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ Z ) @ one_one_rat ) @ X ) ) ).

% le_ceiling_iff
thf(fact_3115_Suc__nat__eq__nat__zadd1,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ( suc @ ( nat2 @ Z ) )
        = ( nat2 @ ( plus_plus_int @ one_one_int @ Z ) ) ) ) ).

% Suc_nat_eq_nat_zadd1
thf(fact_3116_option_Osize__gen_I2_J,axiom,
    ! [X: produc8664842809031399944it_nat > nat,X2: produc8664842809031399944it_nat] :
      ( ( size_o29782932136985253it_nat @ X @ ( some_P1914260805536162275it_nat @ X2 ) )
      = ( plus_plus_nat @ ( X @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).

% option.size_gen(2)
thf(fact_3117_option_Osize__gen_I2_J,axiom,
    ! [X: num > nat,X2: num] :
      ( ( size_option_num @ X @ ( some_num @ X2 ) )
      = ( plus_plus_nat @ ( X @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).

% option.size_gen(2)
thf(fact_3118_Heap_Osize__gen,axiom,
    ! [Xa: product_unit > nat,X: heap_e7401611519738050253t_unit > option8956607266484857688it_nat] :
      ( ( heap_T4142866422068808505t_unit @ Xa @ ( heap_T6183433275982383450t_unit @ X ) )
      = ( suc @ zero_zero_nat ) ) ).

% Heap.size_gen
thf(fact_3119_option_Osize__gen_I1_J,axiom,
    ! [X: num > nat] :
      ( ( size_option_num @ X @ none_num )
      = ( suc @ zero_zero_nat ) ) ).

% option.size_gen(1)
thf(fact_3120_option_Osize__gen_I1_J,axiom,
    ! [X: produc3260487557148687353it_nat > nat] :
      ( ( size_o1731029420616209814it_nat @ X @ none_P2651198173097904984it_nat )
      = ( suc @ zero_zero_nat ) ) ).

% option.size_gen(1)
thf(fact_3121_Heap_Osize_I2_J,axiom,
    ! [X: heap_e7401611519738050253t_unit > option8956607266484857688it_nat] :
      ( ( size_s1564113455978345259t_unit @ ( heap_T6183433275982383450t_unit @ X ) )
      = ( suc @ zero_zero_nat ) ) ).

% Heap.size(2)
thf(fact_3122_int__power__div__base,axiom,
    ! [M: nat,K: int] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_int @ zero_zero_int @ K )
       => ( ( divide_divide_int @ ( power_power_int @ K @ M ) @ K )
          = ( power_power_int @ K @ ( minus_minus_nat @ M @ ( suc @ zero_zero_nat ) ) ) ) ) ) ).

% int_power_div_base
thf(fact_3123_ceiling__divide__lower,axiom,
    ! [Q2: rat,P4: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Q2 )
     => ( ord_less_rat @ ( times_times_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ ( divide_divide_rat @ P4 @ Q2 ) ) ) @ one_one_rat ) @ Q2 ) @ P4 ) ) ).

% ceiling_divide_lower
thf(fact_3124_option_Osize_I4_J,axiom,
    ! [X2: produc8664842809031399944it_nat] :
      ( ( size_s8766407808098229740it_nat @ ( some_P1914260805536162275it_nat @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_3125_option_Osize_I4_J,axiom,
    ! [X2: num] :
      ( ( size_size_option_num @ ( some_num @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_3126_option_Osize_I3_J,axiom,
    ( ( size_size_option_num @ none_num )
    = ( suc @ zero_zero_nat ) ) ).

% option.size(3)
thf(fact_3127_option_Osize_I3_J,axiom,
    ( ( size_s2363601347547812957it_nat @ none_P2651198173097904984it_nat )
    = ( suc @ zero_zero_nat ) ) ).

% option.size(3)
thf(fact_3128_list__decode_Ocases,axiom,
    ! [X: nat] :
      ( ( X != zero_zero_nat )
     => ~ ! [N2: nat] :
            ( X
           != ( suc @ N2 ) ) ) ).

% list_decode.cases
thf(fact_3129_divide__eq__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( divide_divide_rat @ A @ B )
        = zero_zero_rat )
      = ( ( A = zero_zero_rat )
        | ( B = zero_zero_rat ) ) ) ).

% divide_eq_0_iff
thf(fact_3130_divide__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ( divide_divide_rat @ C @ A )
        = ( divide_divide_rat @ C @ B ) )
      = ( ( C = zero_zero_rat )
        | ( A = B ) ) ) ).

% divide_cancel_left
thf(fact_3131_divide__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ( divide_divide_rat @ A @ C )
        = ( divide_divide_rat @ B @ C ) )
      = ( ( C = zero_zero_rat )
        | ( A = B ) ) ) ).

% divide_cancel_right
thf(fact_3132_division__ring__divide__zero,axiom,
    ! [A: rat] :
      ( ( divide_divide_rat @ A @ zero_zero_rat )
      = zero_zero_rat ) ).

% division_ring_divide_zero
thf(fact_3133_div__0,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% div_0
thf(fact_3134_div__0,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% div_0
thf(fact_3135_div__0,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% div_0
thf(fact_3136_div__0,axiom,
    ! [A: rat] :
      ( ( divide_divide_rat @ zero_zero_rat @ A )
      = zero_zero_rat ) ).

% div_0
thf(fact_3137_div__0,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% div_0
thf(fact_3138_div__by__0,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ A @ zero_zero_int )
      = zero_zero_int ) ).

% div_by_0
thf(fact_3139_div__by__0,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ A @ zero_zero_nat )
      = zero_zero_nat ) ).

% div_by_0
thf(fact_3140_div__by__0,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ A @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% div_by_0
thf(fact_3141_div__by__0,axiom,
    ! [A: rat] :
      ( ( divide_divide_rat @ A @ zero_zero_rat )
      = zero_zero_rat ) ).

% div_by_0
thf(fact_3142_div__by__0,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ A @ zero_z2226904508553997617atural )
      = zero_z2226904508553997617atural ) ).

% div_by_0
thf(fact_3143_div__by__1,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ A @ one_one_int )
      = A ) ).

% div_by_1
thf(fact_3144_div__by__1,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ A @ one_one_nat )
      = A ) ).

% div_by_1
thf(fact_3145_div__by__1,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ A @ one_one_Code_integer )
      = A ) ).

% div_by_1
thf(fact_3146_div__by__1,axiom,
    ! [A: rat] :
      ( ( divide_divide_rat @ A @ one_one_rat )
      = A ) ).

% div_by_1
thf(fact_3147_div__by__1,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ A @ one_one_Code_natural )
      = A ) ).

% div_by_1
thf(fact_3148_nat__mult__div__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( K = zero_zero_nat )
       => ( ( divide_divide_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
          = zero_zero_nat ) )
      & ( ( K != zero_zero_nat )
       => ( ( divide_divide_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
          = ( divide_divide_nat @ M @ N ) ) ) ) ).

% nat_mult_div_cancel_disj
thf(fact_3149_nonzero__mult__divide__mult__cancel__right2,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ C @ B ) )
        = ( divide_divide_rat @ A @ B ) ) ) ).

% nonzero_mult_divide_mult_cancel_right2
thf(fact_3150_nonzero__mult__divide__mult__cancel__right,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
        = ( divide_divide_rat @ A @ B ) ) ) ).

% nonzero_mult_divide_mult_cancel_right
thf(fact_3151_nonzero__mult__divide__mult__cancel__left2,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ B @ C ) )
        = ( divide_divide_rat @ A @ B ) ) ) ).

% nonzero_mult_divide_mult_cancel_left2
thf(fact_3152_nonzero__mult__divide__mult__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
        = ( divide_divide_rat @ A @ B ) ) ) ).

% nonzero_mult_divide_mult_cancel_left
thf(fact_3153_mult__divide__mult__cancel__left__if,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ( C = zero_zero_rat )
       => ( ( divide_divide_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
          = zero_zero_rat ) )
      & ( ( C != zero_zero_rat )
       => ( ( divide_divide_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
          = ( divide_divide_rat @ A @ B ) ) ) ) ).

% mult_divide_mult_cancel_left_if
thf(fact_3154_nonzero__mult__div__cancel__left,axiom,
    ! [A: int,B: int] :
      ( ( A != zero_zero_int )
     => ( ( divide_divide_int @ ( times_times_int @ A @ B ) @ A )
        = B ) ) ).

% nonzero_mult_div_cancel_left
thf(fact_3155_nonzero__mult__div__cancel__left,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ( ( divide_divide_nat @ ( times_times_nat @ A @ B ) @ A )
        = B ) ) ).

% nonzero_mult_div_cancel_left
thf(fact_3156_nonzero__mult__div__cancel__left,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ B ) @ A )
        = B ) ) ).

% nonzero_mult_div_cancel_left
thf(fact_3157_nonzero__mult__div__cancel__left,axiom,
    ! [A: rat,B: rat] :
      ( ( A != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ A @ B ) @ A )
        = B ) ) ).

% nonzero_mult_div_cancel_left
thf(fact_3158_nonzero__mult__div__cancel__left,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ B ) @ A )
        = B ) ) ).

% nonzero_mult_div_cancel_left
thf(fact_3159_nonzero__mult__div__cancel__right,axiom,
    ! [B: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( times_times_int @ A @ B ) @ B )
        = A ) ) ).

% nonzero_mult_div_cancel_right
thf(fact_3160_nonzero__mult__div__cancel__right,axiom,
    ! [B: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( times_times_nat @ A @ B ) @ B )
        = A ) ) ).

% nonzero_mult_div_cancel_right
thf(fact_3161_nonzero__mult__div__cancel__right,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ B ) @ B )
        = A ) ) ).

% nonzero_mult_div_cancel_right
thf(fact_3162_nonzero__mult__div__cancel__right,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ A @ B ) @ B )
        = A ) ) ).

% nonzero_mult_div_cancel_right
thf(fact_3163_nonzero__mult__div__cancel__right,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ B ) @ B )
        = A ) ) ).

% nonzero_mult_div_cancel_right
thf(fact_3164_divide__eq__1__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( divide_divide_rat @ A @ B )
        = one_one_rat )
      = ( ( B != zero_zero_rat )
        & ( A = B ) ) ) ).

% divide_eq_1_iff
thf(fact_3165_one__eq__divide__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( one_one_rat
        = ( divide_divide_rat @ A @ B ) )
      = ( ( B != zero_zero_rat )
        & ( A = B ) ) ) ).

% one_eq_divide_iff
thf(fact_3166_divide__self,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( divide_divide_rat @ A @ A )
        = one_one_rat ) ) ).

% divide_self
thf(fact_3167_divide__self__if,axiom,
    ! [A: rat] :
      ( ( ( A = zero_zero_rat )
       => ( ( divide_divide_rat @ A @ A )
          = zero_zero_rat ) )
      & ( ( A != zero_zero_rat )
       => ( ( divide_divide_rat @ A @ A )
          = one_one_rat ) ) ) ).

% divide_self_if
thf(fact_3168_divide__eq__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( ( divide_divide_rat @ B @ A )
        = one_one_rat )
      = ( ( A != zero_zero_rat )
        & ( A = B ) ) ) ).

% divide_eq_eq_1
thf(fact_3169_eq__divide__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( one_one_rat
        = ( divide_divide_rat @ B @ A ) )
      = ( ( A != zero_zero_rat )
        & ( A = B ) ) ) ).

% eq_divide_eq_1
thf(fact_3170_one__divide__eq__0__iff,axiom,
    ! [A: rat] :
      ( ( ( divide_divide_rat @ one_one_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% one_divide_eq_0_iff
thf(fact_3171_zero__eq__1__divide__iff,axiom,
    ! [A: rat] :
      ( ( zero_zero_rat
        = ( divide_divide_rat @ one_one_rat @ A ) )
      = ( A = zero_zero_rat ) ) ).

% zero_eq_1_divide_iff
thf(fact_3172_div__self,axiom,
    ! [A: int] :
      ( ( A != zero_zero_int )
     => ( ( divide_divide_int @ A @ A )
        = one_one_int ) ) ).

% div_self
thf(fact_3173_div__self,axiom,
    ! [A: nat] :
      ( ( A != zero_zero_nat )
     => ( ( divide_divide_nat @ A @ A )
        = one_one_nat ) ) ).

% div_self
thf(fact_3174_div__self,axiom,
    ! [A: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ A @ A )
        = one_one_Code_integer ) ) ).

% div_self
thf(fact_3175_div__self,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( divide_divide_rat @ A @ A )
        = one_one_rat ) ) ).

% div_self
thf(fact_3176_div__self,axiom,
    ! [A: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ A @ A )
        = one_one_Code_natural ) ) ).

% div_self
thf(fact_3177_divide__minus1,axiom,
    ! [X: rat] :
      ( ( divide_divide_rat @ X @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( uminus_uminus_rat @ X ) ) ).

% divide_minus1
thf(fact_3178_divide__le__0__1__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ one_one_rat @ A ) @ zero_zero_rat )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% divide_le_0_1_iff
thf(fact_3179_zero__le__divide__1__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ one_one_rat @ A ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% zero_le_divide_1_iff
thf(fact_3180_divide__less__0__1__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ one_one_rat @ A ) @ zero_zero_rat )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% divide_less_0_1_iff
thf(fact_3181_divide__less__eq__1__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
        = ( ord_less_rat @ A @ B ) ) ) ).

% divide_less_eq_1_neg
thf(fact_3182_divide__less__eq__1__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
        = ( ord_less_rat @ B @ A ) ) ) ).

% divide_less_eq_1_pos
thf(fact_3183_less__divide__eq__1__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
        = ( ord_less_rat @ B @ A ) ) ) ).

% less_divide_eq_1_neg
thf(fact_3184_less__divide__eq__1__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
        = ( ord_less_rat @ A @ B ) ) ) ).

% less_divide_eq_1_pos
thf(fact_3185_zero__less__divide__1__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( divide_divide_rat @ one_one_rat @ A ) )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% zero_less_divide_1_iff
thf(fact_3186_nonzero__divide__mult__cancel__left,axiom,
    ! [A: rat,B: rat] :
      ( ( A != zero_zero_rat )
     => ( ( divide_divide_rat @ A @ ( times_times_rat @ A @ B ) )
        = ( divide_divide_rat @ one_one_rat @ B ) ) ) ).

% nonzero_divide_mult_cancel_left
thf(fact_3187_nonzero__divide__mult__cancel__right,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( divide_divide_rat @ B @ ( times_times_rat @ A @ B ) )
        = ( divide_divide_rat @ one_one_rat @ A ) ) ) ).

% nonzero_divide_mult_cancel_right
thf(fact_3188_divide__le__0__abs__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ A @ ( abs_abs_rat @ B ) ) @ zero_zero_rat )
      = ( ( ord_less_eq_rat @ A @ zero_zero_rat )
        | ( B = zero_zero_rat ) ) ) ).

% divide_le_0_abs_iff
thf(fact_3189_zero__le__divide__abs__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ A @ ( abs_abs_rat @ B ) ) )
      = ( ( ord_less_eq_rat @ zero_zero_rat @ A )
        | ( B = zero_zero_rat ) ) ) ).

% zero_le_divide_abs_iff
thf(fact_3190_divide__le__eq__1__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
        = ( ord_less_eq_rat @ A @ B ) ) ) ).

% divide_le_eq_1_neg
thf(fact_3191_divide__le__eq__1__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
        = ( ord_less_eq_rat @ B @ A ) ) ) ).

% divide_le_eq_1_pos
thf(fact_3192_le__divide__eq__1__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
        = ( ord_less_eq_rat @ B @ A ) ) ) ).

% le_divide_eq_1_neg
thf(fact_3193_le__divide__eq__1__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
        = ( ord_less_eq_rat @ A @ B ) ) ) ).

% le_divide_eq_1_pos
thf(fact_3194_size__neq__size__imp__neq,axiom,
    ! [X: literal,Y3: literal] :
      ( ( ( size_size_literal @ X )
       != ( size_size_literal @ Y3 ) )
     => ( X != Y3 ) ) ).

% size_neq_size_imp_neq
thf(fact_3195_size__neq__size__imp__neq,axiom,
    ! [X: char,Y3: char] :
      ( ( ( size_size_char @ X )
       != ( size_size_char @ Y3 ) )
     => ( X != Y3 ) ) ).

% size_neq_size_imp_neq
thf(fact_3196_size__neq__size__imp__neq,axiom,
    ! [X: list_char,Y3: list_char] :
      ( ( ( size_size_list_char @ X )
       != ( size_size_list_char @ Y3 ) )
     => ( X != Y3 ) ) ).

% size_neq_size_imp_neq
thf(fact_3197_size__neq__size__imp__neq,axiom,
    ! [X: list_nat,Y3: list_nat] :
      ( ( ( size_size_list_nat @ X )
       != ( size_size_list_nat @ Y3 ) )
     => ( X != Y3 ) ) ).

% size_neq_size_imp_neq
thf(fact_3198_size__neq__size__imp__neq,axiom,
    ! [X: num,Y3: num] :
      ( ( ( size_size_num @ X )
       != ( size_size_num @ Y3 ) )
     => ( X != Y3 ) ) ).

% size_neq_size_imp_neq
thf(fact_3199_add__divide__distrib,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( divide_divide_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) ) ) ).

% add_divide_distrib
thf(fact_3200_nat__div__as__int,axiom,
    ( divide_divide_nat
    = ( ^ [A4: nat,B4: nat] : ( nat2 @ ( divide_divide_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ) ).

% nat_div_as_int
thf(fact_3201_divide__le__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ A @ B ) @ zero_zero_rat )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) ) ) ) ).

% divide_le_0_iff
thf(fact_3202_divide__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) ) ) ) ).

% divide_right_mono
thf(fact_3203_zero__le__divide__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ A @ B ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) ) ) ) ).

% zero_le_divide_iff
thf(fact_3204_divide__nonneg__nonneg,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ X @ Y3 ) ) ) ) ).

% divide_nonneg_nonneg
thf(fact_3205_divide__nonneg__nonpos,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X )
     => ( ( ord_less_eq_rat @ Y3 @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ X @ Y3 ) @ zero_zero_rat ) ) ) ).

% divide_nonneg_nonpos
thf(fact_3206_divide__nonpos__nonneg,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ X @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ X @ Y3 ) @ zero_zero_rat ) ) ) ).

% divide_nonpos_nonneg
thf(fact_3207_divide__nonpos__nonpos,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ X @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ Y3 @ zero_zero_rat )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ X @ Y3 ) ) ) ) ).

% divide_nonpos_nonpos
thf(fact_3208_divide__right__mono__neg,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ ( divide_divide_rat @ A @ C ) ) ) ) ).

% divide_right_mono_neg
thf(fact_3209_divide__neg__neg,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_rat @ X @ zero_zero_rat )
     => ( ( ord_less_rat @ Y3 @ zero_zero_rat )
       => ( ord_less_rat @ zero_zero_rat @ ( divide_divide_rat @ X @ Y3 ) ) ) ) ).

% divide_neg_neg
thf(fact_3210_divide__neg__pos,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_rat @ X @ zero_zero_rat )
     => ( ( ord_less_rat @ zero_zero_rat @ Y3 )
       => ( ord_less_rat @ ( divide_divide_rat @ X @ Y3 ) @ zero_zero_rat ) ) ) ).

% divide_neg_pos
thf(fact_3211_divide__pos__neg,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ X )
     => ( ( ord_less_rat @ Y3 @ zero_zero_rat )
       => ( ord_less_rat @ ( divide_divide_rat @ X @ Y3 ) @ zero_zero_rat ) ) ) ).

% divide_pos_neg
thf(fact_3212_divide__pos__pos,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ X )
     => ( ( ord_less_rat @ zero_zero_rat @ Y3 )
       => ( ord_less_rat @ zero_zero_rat @ ( divide_divide_rat @ X @ Y3 ) ) ) ) ).

% divide_pos_pos
thf(fact_3213_divide__less__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ A @ B ) @ zero_zero_rat )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ B @ zero_zero_rat ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ zero_zero_rat @ B ) ) ) ) ).

% divide_less_0_iff
thf(fact_3214_divide__less__cancel,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ A @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ B @ A ) )
        & ( C != zero_zero_rat ) ) ) ).

% divide_less_cancel
thf(fact_3215_zero__less__divide__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( divide_divide_rat @ A @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ zero_zero_rat @ B ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ B @ zero_zero_rat ) ) ) ) ).

% zero_less_divide_iff
thf(fact_3216_divide__strict__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) ) ) ) ).

% divide_strict_right_mono
thf(fact_3217_divide__strict__right__mono__neg,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ( ord_less_rat @ C @ zero_zero_rat )
       => ( ord_less_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) ) ) ) ).

% divide_strict_right_mono_neg
thf(fact_3218_nonzero__eq__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( A
          = ( divide_divide_rat @ B @ C ) )
        = ( ( times_times_rat @ A @ C )
          = B ) ) ) ).

% nonzero_eq_divide_eq
thf(fact_3219_nonzero__divide__eq__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( C != zero_zero_rat )
     => ( ( ( divide_divide_rat @ B @ C )
          = A )
        = ( B
          = ( times_times_rat @ A @ C ) ) ) ) ).

% nonzero_divide_eq_eq
thf(fact_3220_eq__divide__imp,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( ( times_times_rat @ A @ C )
          = B )
       => ( A
          = ( divide_divide_rat @ B @ C ) ) ) ) ).

% eq_divide_imp
thf(fact_3221_divide__eq__imp,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( C != zero_zero_rat )
     => ( ( B
          = ( times_times_rat @ A @ C ) )
       => ( ( divide_divide_rat @ B @ C )
          = A ) ) ) ).

% divide_eq_imp
thf(fact_3222_eq__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( A
        = ( divide_divide_rat @ B @ C ) )
      = ( ( ( C != zero_zero_rat )
         => ( ( times_times_rat @ A @ C )
            = B ) )
        & ( ( C = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% eq_divide_eq
thf(fact_3223_divide__eq__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ( divide_divide_rat @ B @ C )
        = A )
      = ( ( ( C != zero_zero_rat )
         => ( B
            = ( times_times_rat @ A @ C ) ) )
        & ( ( C = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% divide_eq_eq
thf(fact_3224_frac__eq__eq,axiom,
    ! [Y3: rat,Z: rat,X: rat,W: rat] :
      ( ( Y3 != zero_zero_rat )
     => ( ( Z != zero_zero_rat )
       => ( ( ( divide_divide_rat @ X @ Y3 )
            = ( divide_divide_rat @ W @ Z ) )
          = ( ( times_times_rat @ X @ Z )
            = ( times_times_rat @ W @ Y3 ) ) ) ) ) ).

% frac_eq_eq
thf(fact_3225_right__inverse__eq,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( ( divide_divide_rat @ A @ B )
          = one_one_rat )
        = ( A = B ) ) ) ).

% right_inverse_eq
thf(fact_3226_nonzero__minus__divide__right,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( uminus_uminus_rat @ ( divide_divide_rat @ A @ B ) )
        = ( divide_divide_rat @ A @ ( uminus_uminus_rat @ B ) ) ) ) ).

% nonzero_minus_divide_right
thf(fact_3227_nonzero__minus__divide__divide,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( divide_divide_rat @ ( uminus_uminus_rat @ A ) @ ( uminus_uminus_rat @ B ) )
        = ( divide_divide_rat @ A @ B ) ) ) ).

% nonzero_minus_divide_divide
thf(fact_3228_power__one__over,axiom,
    ! [A: rat,N: nat] :
      ( ( power_power_rat @ ( divide_divide_rat @ one_one_rat @ A ) @ N )
      = ( divide_divide_rat @ one_one_rat @ ( power_power_rat @ A @ N ) ) ) ).

% power_one_over
thf(fact_3229_nonzero__abs__divide,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( abs_abs_rat @ ( divide_divide_rat @ A @ B ) )
        = ( divide_divide_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ) ).

% nonzero_abs_divide
thf(fact_3230_div__int__unique,axiom,
    ! [K: int,L: int,Q2: int,R: int] :
      ( ( eucl_rel_int @ K @ L @ ( product_Pair_int_int @ Q2 @ R ) )
     => ( ( divide_divide_int @ K @ L )
        = Q2 ) ) ).

% div_int_unique
thf(fact_3231_frac__le,axiom,
    ! [Y3: rat,X: rat,W: rat,Z: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
     => ( ( ord_less_eq_rat @ X @ Y3 )
       => ( ( ord_less_rat @ zero_zero_rat @ W )
         => ( ( ord_less_eq_rat @ W @ Z )
           => ( ord_less_eq_rat @ ( divide_divide_rat @ X @ Z ) @ ( divide_divide_rat @ Y3 @ W ) ) ) ) ) ) ).

% frac_le
thf(fact_3232_frac__less,axiom,
    ! [X: rat,Y3: rat,W: rat,Z: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X )
     => ( ( ord_less_rat @ X @ Y3 )
       => ( ( ord_less_rat @ zero_zero_rat @ W )
         => ( ( ord_less_eq_rat @ W @ Z )
           => ( ord_less_rat @ ( divide_divide_rat @ X @ Z ) @ ( divide_divide_rat @ Y3 @ W ) ) ) ) ) ) ).

% frac_less
thf(fact_3233_frac__less2,axiom,
    ! [X: rat,Y3: rat,W: rat,Z: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ X )
     => ( ( ord_less_eq_rat @ X @ Y3 )
       => ( ( ord_less_rat @ zero_zero_rat @ W )
         => ( ( ord_less_rat @ W @ Z )
           => ( ord_less_rat @ ( divide_divide_rat @ X @ Z ) @ ( divide_divide_rat @ Y3 @ W ) ) ) ) ) ) ).

% frac_less2
thf(fact_3234_divide__le__cancel,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ A @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ B @ A ) ) ) ) ).

% divide_le_cancel
thf(fact_3235_divide__nonneg__neg,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X )
     => ( ( ord_less_rat @ Y3 @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ X @ Y3 ) @ zero_zero_rat ) ) ) ).

% divide_nonneg_neg
thf(fact_3236_divide__nonneg__pos,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X )
     => ( ( ord_less_rat @ zero_zero_rat @ Y3 )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ X @ Y3 ) ) ) ) ).

% divide_nonneg_pos
thf(fact_3237_divide__nonpos__neg,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ X @ zero_zero_rat )
     => ( ( ord_less_rat @ Y3 @ zero_zero_rat )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ X @ Y3 ) ) ) ) ).

% divide_nonpos_neg
thf(fact_3238_divide__nonpos__pos,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ X @ zero_zero_rat )
     => ( ( ord_less_rat @ zero_zero_rat @ Y3 )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ X @ Y3 ) @ zero_zero_rat ) ) ) ).

% divide_nonpos_pos
thf(fact_3239_div__positive,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ( ord_le3102999989581377725nteger @ B @ A )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_positive
thf(fact_3240_div__positive,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ( ord_less_eq_nat @ B @ A )
       => ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_positive
thf(fact_3241_div__positive,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_int @ B @ A )
       => ( ord_less_int @ zero_zero_int @ ( divide_divide_int @ A @ B ) ) ) ) ).

% div_positive
thf(fact_3242_unique__euclidean__semiring__numeral__class_Odiv__less,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ A @ B )
       => ( ( divide6298287555418463151nteger @ A @ B )
          = zero_z3403309356797280102nteger ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_less
thf(fact_3243_unique__euclidean__semiring__numeral__class_Odiv__less,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ A @ B )
       => ( ( divide_divide_nat @ A @ B )
          = zero_zero_nat ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_less
thf(fact_3244_unique__euclidean__semiring__numeral__class_Odiv__less,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ A @ B )
       => ( ( divide_divide_int @ A @ B )
          = zero_zero_int ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_less
thf(fact_3245_unique__euclidean__semiring__numeral__class_Odiv__mult2__eq,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
     => ( ( divide6298287555418463151nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) )
        = ( divide6298287555418463151nteger @ ( divide6298287555418463151nteger @ A @ B ) @ C ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_mult2_eq
thf(fact_3246_unique__euclidean__semiring__numeral__class_Odiv__mult2__eq,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ C )
     => ( ( divide_divide_nat @ A @ ( times_times_nat @ B @ C ) )
        = ( divide_divide_nat @ ( divide_divide_nat @ A @ B ) @ C ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_mult2_eq
thf(fact_3247_unique__euclidean__semiring__numeral__class_Odiv__mult2__eq,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( divide_divide_int @ A @ ( times_times_int @ B @ C ) )
        = ( divide_divide_int @ ( divide_divide_int @ A @ B ) @ C ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_mult2_eq
thf(fact_3248_divide__less__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ B @ C ) @ A )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ B @ ( times_times_rat @ A @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ zero_zero_rat @ A ) ) ) ) ) ) ).

% divide_less_eq
thf(fact_3249_less__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ B @ ( times_times_rat @ A @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ A @ zero_zero_rat ) ) ) ) ) ) ).

% less_divide_eq
thf(fact_3250_neg__divide__less__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_rat @ ( divide_divide_rat @ B @ C ) @ A )
        = ( ord_less_rat @ ( times_times_rat @ A @ C ) @ B ) ) ) ).

% neg_divide_less_eq
thf(fact_3251_neg__less__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_rat @ A @ ( divide_divide_rat @ B @ C ) )
        = ( ord_less_rat @ B @ ( times_times_rat @ A @ C ) ) ) ) ).

% neg_less_divide_eq
thf(fact_3252_pos__divide__less__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_rat @ ( divide_divide_rat @ B @ C ) @ A )
        = ( ord_less_rat @ B @ ( times_times_rat @ A @ C ) ) ) ) ).

% pos_divide_less_eq
thf(fact_3253_pos__less__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_rat @ A @ ( divide_divide_rat @ B @ C ) )
        = ( ord_less_rat @ ( times_times_rat @ A @ C ) @ B ) ) ) ).

% pos_less_divide_eq
thf(fact_3254_mult__imp__div__pos__less,axiom,
    ! [Y3: rat,X: rat,Z: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Y3 )
     => ( ( ord_less_rat @ X @ ( times_times_rat @ Z @ Y3 ) )
       => ( ord_less_rat @ ( divide_divide_rat @ X @ Y3 ) @ Z ) ) ) ).

% mult_imp_div_pos_less
thf(fact_3255_mult__imp__less__div__pos,axiom,
    ! [Y3: rat,Z: rat,X: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Y3 )
     => ( ( ord_less_rat @ ( times_times_rat @ Z @ Y3 ) @ X )
       => ( ord_less_rat @ Z @ ( divide_divide_rat @ X @ Y3 ) ) ) ) ).

% mult_imp_less_div_pos
thf(fact_3256_divide__strict__left__mono,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
         => ( ord_less_rat @ ( divide_divide_rat @ C @ A ) @ ( divide_divide_rat @ C @ B ) ) ) ) ) ).

% divide_strict_left_mono
thf(fact_3257_divide__strict__left__mono__neg,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ C @ zero_zero_rat )
       => ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
         => ( ord_less_rat @ ( divide_divide_rat @ C @ A ) @ ( divide_divide_rat @ C @ B ) ) ) ) ) ).

% divide_strict_left_mono_neg
thf(fact_3258_divide__less__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ B @ A ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ A @ B ) )
        | ( A = zero_zero_rat ) ) ) ).

% divide_less_eq_1
thf(fact_3259_less__divide__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ A @ B ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ B @ A ) ) ) ) ).

% less_divide_eq_1
thf(fact_3260_add__divide__eq__if__simps_I2_J,axiom,
    ! [Z: rat,A: rat,B: rat] :
      ( ( ( Z = zero_zero_rat )
       => ( ( plus_plus_rat @ ( divide_divide_rat @ A @ Z ) @ B )
          = B ) )
      & ( ( Z != zero_zero_rat )
       => ( ( plus_plus_rat @ ( divide_divide_rat @ A @ Z ) @ B )
          = ( divide_divide_rat @ ( plus_plus_rat @ A @ ( times_times_rat @ B @ Z ) ) @ Z ) ) ) ) ).

% add_divide_eq_if_simps(2)
thf(fact_3261_add__divide__eq__if__simps_I1_J,axiom,
    ! [Z: rat,A: rat,B: rat] :
      ( ( ( Z = zero_zero_rat )
       => ( ( plus_plus_rat @ A @ ( divide_divide_rat @ B @ Z ) )
          = A ) )
      & ( ( Z != zero_zero_rat )
       => ( ( plus_plus_rat @ A @ ( divide_divide_rat @ B @ Z ) )
          = ( divide_divide_rat @ ( plus_plus_rat @ ( times_times_rat @ A @ Z ) @ B ) @ Z ) ) ) ) ).

% add_divide_eq_if_simps(1)
thf(fact_3262_add__frac__eq,axiom,
    ! [Y3: rat,Z: rat,X: rat,W: rat] :
      ( ( Y3 != zero_zero_rat )
     => ( ( Z != zero_zero_rat )
       => ( ( plus_plus_rat @ ( divide_divide_rat @ X @ Y3 ) @ ( divide_divide_rat @ W @ Z ) )
          = ( divide_divide_rat @ ( plus_plus_rat @ ( times_times_rat @ X @ Z ) @ ( times_times_rat @ W @ Y3 ) ) @ ( times_times_rat @ Y3 @ Z ) ) ) ) ) ).

% add_frac_eq
thf(fact_3263_add__frac__num,axiom,
    ! [Y3: rat,X: rat,Z: rat] :
      ( ( Y3 != zero_zero_rat )
     => ( ( plus_plus_rat @ ( divide_divide_rat @ X @ Y3 ) @ Z )
        = ( divide_divide_rat @ ( plus_plus_rat @ X @ ( times_times_rat @ Z @ Y3 ) ) @ Y3 ) ) ) ).

% add_frac_num
thf(fact_3264_add__num__frac,axiom,
    ! [Y3: rat,Z: rat,X: rat] :
      ( ( Y3 != zero_zero_rat )
     => ( ( plus_plus_rat @ Z @ ( divide_divide_rat @ X @ Y3 ) )
        = ( divide_divide_rat @ ( plus_plus_rat @ X @ ( times_times_rat @ Z @ Y3 ) ) @ Y3 ) ) ) ).

% add_num_frac
thf(fact_3265_add__divide__eq__iff,axiom,
    ! [Z: rat,X: rat,Y3: rat] :
      ( ( Z != zero_zero_rat )
     => ( ( plus_plus_rat @ X @ ( divide_divide_rat @ Y3 @ Z ) )
        = ( divide_divide_rat @ ( plus_plus_rat @ ( times_times_rat @ X @ Z ) @ Y3 ) @ Z ) ) ) ).

% add_divide_eq_iff
thf(fact_3266_divide__add__eq__iff,axiom,
    ! [Z: rat,X: rat,Y3: rat] :
      ( ( Z != zero_zero_rat )
     => ( ( plus_plus_rat @ ( divide_divide_rat @ X @ Z ) @ Y3 )
        = ( divide_divide_rat @ ( plus_plus_rat @ X @ ( times_times_rat @ Y3 @ Z ) ) @ Z ) ) ) ).

% divide_add_eq_iff
thf(fact_3267_add__divide__eq__if__simps_I4_J,axiom,
    ! [Z: rat,A: rat,B: rat] :
      ( ( ( Z = zero_zero_rat )
       => ( ( minus_minus_rat @ A @ ( divide_divide_rat @ B @ Z ) )
          = A ) )
      & ( ( Z != zero_zero_rat )
       => ( ( minus_minus_rat @ A @ ( divide_divide_rat @ B @ Z ) )
          = ( divide_divide_rat @ ( minus_minus_rat @ ( times_times_rat @ A @ Z ) @ B ) @ Z ) ) ) ) ).

% add_divide_eq_if_simps(4)
thf(fact_3268_diff__frac__eq,axiom,
    ! [Y3: rat,Z: rat,X: rat,W: rat] :
      ( ( Y3 != zero_zero_rat )
     => ( ( Z != zero_zero_rat )
       => ( ( minus_minus_rat @ ( divide_divide_rat @ X @ Y3 ) @ ( divide_divide_rat @ W @ Z ) )
          = ( divide_divide_rat @ ( minus_minus_rat @ ( times_times_rat @ X @ Z ) @ ( times_times_rat @ W @ Y3 ) ) @ ( times_times_rat @ Y3 @ Z ) ) ) ) ) ).

% diff_frac_eq
thf(fact_3269_diff__divide__eq__iff,axiom,
    ! [Z: rat,X: rat,Y3: rat] :
      ( ( Z != zero_zero_rat )
     => ( ( minus_minus_rat @ X @ ( divide_divide_rat @ Y3 @ Z ) )
        = ( divide_divide_rat @ ( minus_minus_rat @ ( times_times_rat @ X @ Z ) @ Y3 ) @ Z ) ) ) ).

% diff_divide_eq_iff
thf(fact_3270_divide__diff__eq__iff,axiom,
    ! [Z: rat,X: rat,Y3: rat] :
      ( ( Z != zero_zero_rat )
     => ( ( minus_minus_rat @ ( divide_divide_rat @ X @ Z ) @ Y3 )
        = ( divide_divide_rat @ ( minus_minus_rat @ X @ ( times_times_rat @ Y3 @ Z ) ) @ Z ) ) ) ).

% divide_diff_eq_iff
thf(fact_3271_gt__half__sum,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( divide_divide_rat @ ( plus_plus_rat @ A @ B ) @ ( plus_plus_rat @ one_one_rat @ one_one_rat ) ) @ B ) ) ).

% gt_half_sum
thf(fact_3272_less__half__sum,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ A @ ( divide_divide_rat @ ( plus_plus_rat @ A @ B ) @ ( plus_plus_rat @ one_one_rat @ one_one_rat ) ) ) ) ).

% less_half_sum
thf(fact_3273_eq__minus__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( A
        = ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
      = ( ( ( C != zero_zero_rat )
         => ( ( times_times_rat @ A @ C )
            = ( uminus_uminus_rat @ B ) ) )
        & ( ( C = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% eq_minus_divide_eq
thf(fact_3274_minus__divide__eq__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) )
        = A )
      = ( ( ( C != zero_zero_rat )
         => ( ( uminus_uminus_rat @ B )
            = ( times_times_rat @ A @ C ) ) )
        & ( ( C = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% minus_divide_eq_eq
thf(fact_3275_nonzero__neg__divide__eq__eq,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( B != zero_zero_rat )
     => ( ( ( uminus_uminus_rat @ ( divide_divide_rat @ A @ B ) )
          = C )
        = ( ( uminus_uminus_rat @ A )
          = ( times_times_rat @ C @ B ) ) ) ) ).

% nonzero_neg_divide_eq_eq
thf(fact_3276_nonzero__neg__divide__eq__eq2,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( C
          = ( uminus_uminus_rat @ ( divide_divide_rat @ A @ B ) ) )
        = ( ( times_times_rat @ C @ B )
          = ( uminus_uminus_rat @ A ) ) ) ) ).

% nonzero_neg_divide_eq_eq2
thf(fact_3277_divide__eq__minus__1__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( divide_divide_rat @ A @ B )
        = ( uminus_uminus_rat @ one_one_rat ) )
      = ( ( B != zero_zero_rat )
        & ( A
          = ( uminus_uminus_rat @ B ) ) ) ) ).

% divide_eq_minus_1_iff
thf(fact_3278_abs__div__pos,axiom,
    ! [Y3: rat,X: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Y3 )
     => ( ( divide_divide_rat @ ( abs_abs_rat @ X ) @ Y3 )
        = ( abs_abs_rat @ ( divide_divide_rat @ X @ Y3 ) ) ) ) ).

% abs_div_pos
thf(fact_3279_nat__mult__div__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( divide_divide_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( divide_divide_nat @ M @ N ) ) ) ).

% nat_mult_div_cancel1
thf(fact_3280_distrib__left__NO__MATCH,axiom,
    ! [X: int,Y3: int,A: nat,B: nat,C: nat] :
      ( ( nO_MATCH_int_nat @ ( divide_divide_int @ X @ Y3 ) @ A )
     => ( ( times_times_nat @ A @ ( plus_plus_nat @ B @ C ) )
        = ( plus_plus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3281_distrib__left__NO__MATCH,axiom,
    ! [X: int,Y3: int,A: int,B: int,C: int] :
      ( ( nO_MATCH_int_int @ ( divide_divide_int @ X @ Y3 ) @ A )
     => ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
        = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3282_distrib__left__NO__MATCH,axiom,
    ! [X: int,Y3: int,A: code_integer,B: code_integer,C: code_integer] :
      ( ( nO_MAT9066612773553876470nteger @ ( divide_divide_int @ X @ Y3 ) @ A )
     => ( ( times_3573771949741848930nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3283_distrib__left__NO__MATCH,axiom,
    ! [X: int,Y3: int,A: rat,B: rat,C: rat] :
      ( ( nO_MATCH_int_rat @ ( divide_divide_int @ X @ Y3 ) @ A )
     => ( ( times_times_rat @ A @ ( plus_plus_rat @ B @ C ) )
        = ( plus_plus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3284_distrib__left__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,A: nat,B: nat,C: nat] :
      ( ( nO_MATCH_nat_nat @ ( divide_divide_nat @ X @ Y3 ) @ A )
     => ( ( times_times_nat @ A @ ( plus_plus_nat @ B @ C ) )
        = ( plus_plus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3285_distrib__left__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,A: int,B: int,C: int] :
      ( ( nO_MATCH_nat_int @ ( divide_divide_nat @ X @ Y3 ) @ A )
     => ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
        = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3286_distrib__left__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,A: code_integer,B: code_integer,C: code_integer] :
      ( ( nO_MAT8694959213317031834nteger @ ( divide_divide_nat @ X @ Y3 ) @ A )
     => ( ( times_3573771949741848930nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3287_distrib__left__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,A: rat,B: rat,C: rat] :
      ( ( nO_MATCH_nat_rat @ ( divide_divide_nat @ X @ Y3 ) @ A )
     => ( ( times_times_rat @ A @ ( plus_plus_rat @ B @ C ) )
        = ( plus_plus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3288_distrib__left__NO__MATCH,axiom,
    ! [X: code_integer,Y3: code_integer,A: nat,B: nat,C: nat] :
      ( ( nO_MAT8430403764537989018er_nat @ ( divide6298287555418463151nteger @ X @ Y3 ) @ A )
     => ( ( times_times_nat @ A @ ( plus_plus_nat @ B @ C ) )
        = ( plus_plus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3289_distrib__left__NO__MATCH,axiom,
    ! [X: code_integer,Y3: code_integer,A: int,B: int,C: int] :
      ( ( nO_MAT8427913294028938742er_int @ ( divide6298287555418463151nteger @ X @ Y3 ) @ A )
     => ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
        = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3290_distrib__right__NO__MATCH,axiom,
    ! [X: int,Y3: int,C: nat,A: nat,B: nat] :
      ( ( nO_MATCH_int_nat @ ( divide_divide_int @ X @ Y3 ) @ C )
     => ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
        = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3291_distrib__right__NO__MATCH,axiom,
    ! [X: int,Y3: int,C: int,A: int,B: int] :
      ( ( nO_MATCH_int_int @ ( divide_divide_int @ X @ Y3 ) @ C )
     => ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
        = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3292_distrib__right__NO__MATCH,axiom,
    ! [X: int,Y3: int,C: code_integer,A: code_integer,B: code_integer] :
      ( ( nO_MAT9066612773553876470nteger @ ( divide_divide_int @ X @ Y3 ) @ C )
     => ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3293_distrib__right__NO__MATCH,axiom,
    ! [X: int,Y3: int,C: rat,A: rat,B: rat] :
      ( ( nO_MATCH_int_rat @ ( divide_divide_int @ X @ Y3 ) @ C )
     => ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
        = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3294_distrib__right__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,C: nat,A: nat,B: nat] :
      ( ( nO_MATCH_nat_nat @ ( divide_divide_nat @ X @ Y3 ) @ C )
     => ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
        = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3295_distrib__right__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,C: int,A: int,B: int] :
      ( ( nO_MATCH_nat_int @ ( divide_divide_nat @ X @ Y3 ) @ C )
     => ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
        = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3296_distrib__right__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,C: code_integer,A: code_integer,B: code_integer] :
      ( ( nO_MAT8694959213317031834nteger @ ( divide_divide_nat @ X @ Y3 ) @ C )
     => ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3297_distrib__right__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,C: rat,A: rat,B: rat] :
      ( ( nO_MATCH_nat_rat @ ( divide_divide_nat @ X @ Y3 ) @ C )
     => ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
        = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3298_distrib__right__NO__MATCH,axiom,
    ! [X: code_integer,Y3: code_integer,C: nat,A: nat,B: nat] :
      ( ( nO_MAT8430403764537989018er_nat @ ( divide6298287555418463151nteger @ X @ Y3 ) @ C )
     => ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
        = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3299_distrib__right__NO__MATCH,axiom,
    ! [X: code_integer,Y3: code_integer,C: int,A: int,B: int] :
      ( ( nO_MAT8427913294028938742er_int @ ( divide6298287555418463151nteger @ X @ Y3 ) @ C )
     => ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
        = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3300_left__diff__distrib__NO__MATCH,axiom,
    ! [X: int,Y3: int,C: int,A: int,B: int] :
      ( ( nO_MATCH_int_int @ ( divide_divide_int @ X @ Y3 ) @ C )
     => ( ( times_times_int @ ( minus_minus_int @ A @ B ) @ C )
        = ( minus_minus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% left_diff_distrib_NO_MATCH
thf(fact_3301_left__diff__distrib__NO__MATCH,axiom,
    ! [X: int,Y3: int,C: code_integer,A: code_integer,B: code_integer] :
      ( ( nO_MAT9066612773553876470nteger @ ( divide_divide_int @ X @ Y3 ) @ C )
     => ( ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
        = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% left_diff_distrib_NO_MATCH
thf(fact_3302_left__diff__distrib__NO__MATCH,axiom,
    ! [X: int,Y3: int,C: rat,A: rat,B: rat] :
      ( ( nO_MATCH_int_rat @ ( divide_divide_int @ X @ Y3 ) @ C )
     => ( ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ C )
        = ( minus_minus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% left_diff_distrib_NO_MATCH
thf(fact_3303_left__diff__distrib__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,C: int,A: int,B: int] :
      ( ( nO_MATCH_nat_int @ ( divide_divide_nat @ X @ Y3 ) @ C )
     => ( ( times_times_int @ ( minus_minus_int @ A @ B ) @ C )
        = ( minus_minus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% left_diff_distrib_NO_MATCH
thf(fact_3304_left__diff__distrib__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,C: code_integer,A: code_integer,B: code_integer] :
      ( ( nO_MAT8694959213317031834nteger @ ( divide_divide_nat @ X @ Y3 ) @ C )
     => ( ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
        = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% left_diff_distrib_NO_MATCH
thf(fact_3305_left__diff__distrib__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,C: rat,A: rat,B: rat] :
      ( ( nO_MATCH_nat_rat @ ( divide_divide_nat @ X @ Y3 ) @ C )
     => ( ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ C )
        = ( minus_minus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% left_diff_distrib_NO_MATCH
thf(fact_3306_left__diff__distrib__NO__MATCH,axiom,
    ! [X: code_integer,Y3: code_integer,C: int,A: int,B: int] :
      ( ( nO_MAT8427913294028938742er_int @ ( divide6298287555418463151nteger @ X @ Y3 ) @ C )
     => ( ( times_times_int @ ( minus_minus_int @ A @ B ) @ C )
        = ( minus_minus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% left_diff_distrib_NO_MATCH
thf(fact_3307_left__diff__distrib__NO__MATCH,axiom,
    ! [X: code_integer,Y3: code_integer,C: code_integer,A: code_integer,B: code_integer] :
      ( ( nO_MAT8252062027627875367nteger @ ( divide6298287555418463151nteger @ X @ Y3 ) @ C )
     => ( ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
        = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% left_diff_distrib_NO_MATCH
thf(fact_3308_left__diff__distrib__NO__MATCH,axiom,
    ! [X: code_integer,Y3: code_integer,C: rat,A: rat,B: rat] :
      ( ( nO_MAT7795273704451493282er_rat @ ( divide6298287555418463151nteger @ X @ Y3 ) @ C )
     => ( ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ C )
        = ( minus_minus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% left_diff_distrib_NO_MATCH
thf(fact_3309_left__diff__distrib__NO__MATCH,axiom,
    ! [X: rat,Y3: rat,C: int,A: int,B: int] :
      ( ( nO_MATCH_rat_int @ ( divide_divide_rat @ X @ Y3 ) @ C )
     => ( ( times_times_int @ ( minus_minus_int @ A @ B ) @ C )
        = ( minus_minus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% left_diff_distrib_NO_MATCH
thf(fact_3310_right__diff__distrib__NO__MATCH,axiom,
    ! [X: int,Y3: int,A: int,B: int,C: int] :
      ( ( nO_MATCH_int_int @ ( divide_divide_int @ X @ Y3 ) @ A )
     => ( ( times_times_int @ A @ ( minus_minus_int @ B @ C ) )
        = ( minus_minus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ) ).

% right_diff_distrib_NO_MATCH
thf(fact_3311_right__diff__distrib__NO__MATCH,axiom,
    ! [X: int,Y3: int,A: code_integer,B: code_integer,C: code_integer] :
      ( ( nO_MAT9066612773553876470nteger @ ( divide_divide_int @ X @ Y3 ) @ A )
     => ( ( times_3573771949741848930nteger @ A @ ( minus_8373710615458151222nteger @ B @ C ) )
        = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ) ).

% right_diff_distrib_NO_MATCH
thf(fact_3312_right__diff__distrib__NO__MATCH,axiom,
    ! [X: int,Y3: int,A: rat,B: rat,C: rat] :
      ( ( nO_MATCH_int_rat @ ( divide_divide_int @ X @ Y3 ) @ A )
     => ( ( times_times_rat @ A @ ( minus_minus_rat @ B @ C ) )
        = ( minus_minus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% right_diff_distrib_NO_MATCH
thf(fact_3313_right__diff__distrib__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,A: int,B: int,C: int] :
      ( ( nO_MATCH_nat_int @ ( divide_divide_nat @ X @ Y3 ) @ A )
     => ( ( times_times_int @ A @ ( minus_minus_int @ B @ C ) )
        = ( minus_minus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ) ).

% right_diff_distrib_NO_MATCH
thf(fact_3314_right__diff__distrib__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,A: code_integer,B: code_integer,C: code_integer] :
      ( ( nO_MAT8694959213317031834nteger @ ( divide_divide_nat @ X @ Y3 ) @ A )
     => ( ( times_3573771949741848930nteger @ A @ ( minus_8373710615458151222nteger @ B @ C ) )
        = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ) ).

% right_diff_distrib_NO_MATCH
thf(fact_3315_right__diff__distrib__NO__MATCH,axiom,
    ! [X: nat,Y3: nat,A: rat,B: rat,C: rat] :
      ( ( nO_MATCH_nat_rat @ ( divide_divide_nat @ X @ Y3 ) @ A )
     => ( ( times_times_rat @ A @ ( minus_minus_rat @ B @ C ) )
        = ( minus_minus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% right_diff_distrib_NO_MATCH
thf(fact_3316_right__diff__distrib__NO__MATCH,axiom,
    ! [X: code_integer,Y3: code_integer,A: int,B: int,C: int] :
      ( ( nO_MAT8427913294028938742er_int @ ( divide6298287555418463151nteger @ X @ Y3 ) @ A )
     => ( ( times_times_int @ A @ ( minus_minus_int @ B @ C ) )
        = ( minus_minus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ) ).

% right_diff_distrib_NO_MATCH
thf(fact_3317_right__diff__distrib__NO__MATCH,axiom,
    ! [X: code_integer,Y3: code_integer,A: code_integer,B: code_integer,C: code_integer] :
      ( ( nO_MAT8252062027627875367nteger @ ( divide6298287555418463151nteger @ X @ Y3 ) @ A )
     => ( ( times_3573771949741848930nteger @ A @ ( minus_8373710615458151222nteger @ B @ C ) )
        = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ) ).

% right_diff_distrib_NO_MATCH
thf(fact_3318_right__diff__distrib__NO__MATCH,axiom,
    ! [X: code_integer,Y3: code_integer,A: rat,B: rat,C: rat] :
      ( ( nO_MAT7795273704451493282er_rat @ ( divide6298287555418463151nteger @ X @ Y3 ) @ A )
     => ( ( times_times_rat @ A @ ( minus_minus_rat @ B @ C ) )
        = ( minus_minus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% right_diff_distrib_NO_MATCH
thf(fact_3319_right__diff__distrib__NO__MATCH,axiom,
    ! [X: rat,Y3: rat,A: int,B: int,C: int] :
      ( ( nO_MATCH_rat_int @ ( divide_divide_rat @ X @ Y3 ) @ A )
     => ( ( times_times_int @ A @ ( minus_minus_int @ B @ C ) )
        = ( minus_minus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ) ).

% right_diff_distrib_NO_MATCH
thf(fact_3320_divide__le__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ A )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ B @ ( times_times_rat @ A @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ) ) ) ) ).

% divide_le_eq
thf(fact_3321_le__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ B @ ( times_times_rat @ A @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ) ) ) ) ).

% le_divide_eq
thf(fact_3322_divide__left__mono,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
         => ( ord_less_eq_rat @ ( divide_divide_rat @ C @ A ) @ ( divide_divide_rat @ C @ B ) ) ) ) ) ).

% divide_left_mono
thf(fact_3323_neg__divide__le__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ A )
        = ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ B ) ) ) ).

% neg_divide_le_eq
thf(fact_3324_neg__le__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ A @ ( divide_divide_rat @ B @ C ) )
        = ( ord_less_eq_rat @ B @ ( times_times_rat @ A @ C ) ) ) ) ).

% neg_le_divide_eq
thf(fact_3325_pos__divide__le__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ A )
        = ( ord_less_eq_rat @ B @ ( times_times_rat @ A @ C ) ) ) ) ).

% pos_divide_le_eq
thf(fact_3326_pos__le__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ A @ ( divide_divide_rat @ B @ C ) )
        = ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ B ) ) ) ).

% pos_le_divide_eq
thf(fact_3327_mult__imp__div__pos__le,axiom,
    ! [Y3: rat,X: rat,Z: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Y3 )
     => ( ( ord_less_eq_rat @ X @ ( times_times_rat @ Z @ Y3 ) )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ X @ Y3 ) @ Z ) ) ) ).

% mult_imp_div_pos_le
thf(fact_3328_mult__imp__le__div__pos,axiom,
    ! [Y3: rat,Z: rat,X: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Y3 )
     => ( ( ord_less_eq_rat @ ( times_times_rat @ Z @ Y3 ) @ X )
       => ( ord_less_eq_rat @ Z @ ( divide_divide_rat @ X @ Y3 ) ) ) ) ).

% mult_imp_le_div_pos
thf(fact_3329_divide__left__mono__neg,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ zero_zero_rat )
       => ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
         => ( ord_less_eq_rat @ ( divide_divide_rat @ C @ A ) @ ( divide_divide_rat @ C @ B ) ) ) ) ) ).

% divide_left_mono_neg
thf(fact_3330_le__divide__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ A @ B ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ B @ A ) ) ) ) ).

% le_divide_eq_1
thf(fact_3331_divide__le__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ B @ A ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ A @ B ) )
        | ( A = zero_zero_rat ) ) ) ).

% divide_le_eq_1
thf(fact_3332_frac__le__eq,axiom,
    ! [Y3: rat,Z: rat,X: rat,W: rat] :
      ( ( Y3 != zero_zero_rat )
     => ( ( Z != zero_zero_rat )
       => ( ( ord_less_eq_rat @ ( divide_divide_rat @ X @ Y3 ) @ ( divide_divide_rat @ W @ Z ) )
          = ( ord_less_eq_rat @ ( divide_divide_rat @ ( minus_minus_rat @ ( times_times_rat @ X @ Z ) @ ( times_times_rat @ W @ Y3 ) ) @ ( times_times_rat @ Y3 @ Z ) ) @ zero_zero_rat ) ) ) ) ).

% frac_le_eq
thf(fact_3333_frac__less__eq,axiom,
    ! [Y3: rat,Z: rat,X: rat,W: rat] :
      ( ( Y3 != zero_zero_rat )
     => ( ( Z != zero_zero_rat )
       => ( ( ord_less_rat @ ( divide_divide_rat @ X @ Y3 ) @ ( divide_divide_rat @ W @ Z ) )
          = ( ord_less_rat @ ( divide_divide_rat @ ( minus_minus_rat @ ( times_times_rat @ X @ Z ) @ ( times_times_rat @ W @ Y3 ) ) @ ( times_times_rat @ Y3 @ Z ) ) @ zero_zero_rat ) ) ) ) ).

% frac_less_eq
thf(fact_3334_less__minus__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ A @ zero_zero_rat ) ) ) ) ) ) ).

% less_minus_divide_eq
thf(fact_3335_minus__divide__less__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ zero_zero_rat @ A ) ) ) ) ) ) ).

% minus_divide_less_eq
thf(fact_3336_neg__less__minus__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
        = ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% neg_less_minus_divide_eq
thf(fact_3337_neg__minus__divide__less__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
        = ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) ) ) ).

% neg_minus_divide_less_eq
thf(fact_3338_pos__less__minus__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
        = ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) ) ) ).

% pos_less_minus_divide_eq
thf(fact_3339_pos__minus__divide__less__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
        = ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% pos_minus_divide_less_eq
thf(fact_3340_minus__divide__add__eq__iff,axiom,
    ! [Z: rat,X: rat,Y3: rat] :
      ( ( Z != zero_zero_rat )
     => ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ X @ Z ) ) @ Y3 )
        = ( divide_divide_rat @ ( plus_plus_rat @ ( uminus_uminus_rat @ X ) @ ( times_times_rat @ Y3 @ Z ) ) @ Z ) ) ) ).

% minus_divide_add_eq_iff
thf(fact_3341_add__divide__eq__if__simps_I3_J,axiom,
    ! [Z: rat,A: rat,B: rat] :
      ( ( ( Z = zero_zero_rat )
       => ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ A @ Z ) ) @ B )
          = B ) )
      & ( ( Z != zero_zero_rat )
       => ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ A @ Z ) ) @ B )
          = ( divide_divide_rat @ ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ ( times_times_rat @ B @ Z ) ) @ Z ) ) ) ) ).

% add_divide_eq_if_simps(3)
thf(fact_3342_add__divide__eq__if__simps_I6_J,axiom,
    ! [Z: rat,A: rat,B: rat] :
      ( ( ( Z = zero_zero_rat )
       => ( ( minus_minus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ A @ Z ) ) @ B )
          = ( uminus_uminus_rat @ B ) ) )
      & ( ( Z != zero_zero_rat )
       => ( ( minus_minus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ A @ Z ) ) @ B )
          = ( divide_divide_rat @ ( minus_minus_rat @ ( uminus_uminus_rat @ A ) @ ( times_times_rat @ B @ Z ) ) @ Z ) ) ) ) ).

% add_divide_eq_if_simps(6)
thf(fact_3343_add__divide__eq__if__simps_I5_J,axiom,
    ! [Z: rat,A: rat,B: rat] :
      ( ( ( Z = zero_zero_rat )
       => ( ( minus_minus_rat @ ( divide_divide_rat @ A @ Z ) @ B )
          = ( uminus_uminus_rat @ B ) ) )
      & ( ( Z != zero_zero_rat )
       => ( ( minus_minus_rat @ ( divide_divide_rat @ A @ Z ) @ B )
          = ( divide_divide_rat @ ( minus_minus_rat @ A @ ( times_times_rat @ B @ Z ) ) @ Z ) ) ) ) ).

% add_divide_eq_if_simps(5)
thf(fact_3344_minus__divide__diff__eq__iff,axiom,
    ! [Z: rat,X: rat,Y3: rat] :
      ( ( Z != zero_zero_rat )
     => ( ( minus_minus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ X @ Z ) ) @ Y3 )
        = ( divide_divide_rat @ ( minus_minus_rat @ ( uminus_uminus_rat @ X ) @ ( times_times_rat @ Y3 @ Z ) ) @ Z ) ) ) ).

% minus_divide_diff_eq_iff
thf(fact_3345_power__diff,axiom,
    ! [A: int,N: nat,M: nat] :
      ( ( A != zero_zero_int )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( power_power_int @ A @ ( minus_minus_nat @ M @ N ) )
          = ( divide_divide_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) ) ) ) ) ).

% power_diff
thf(fact_3346_power__diff,axiom,
    ! [A: nat,N: nat,M: nat] :
      ( ( A != zero_zero_nat )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( power_power_nat @ A @ ( minus_minus_nat @ M @ N ) )
          = ( divide_divide_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) ) ) ) ) ).

% power_diff
thf(fact_3347_power__diff,axiom,
    ! [A: code_integer,N: nat,M: nat] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( power_8256067586552552935nteger @ A @ ( minus_minus_nat @ M @ N ) )
          = ( divide6298287555418463151nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ) ).

% power_diff
thf(fact_3348_power__diff,axiom,
    ! [A: rat,N: nat,M: nat] :
      ( ( A != zero_zero_rat )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( power_power_rat @ A @ ( minus_minus_nat @ M @ N ) )
          = ( divide_divide_rat @ ( power_power_rat @ A @ M ) @ ( power_power_rat @ A @ N ) ) ) ) ) ).

% power_diff
thf(fact_3349_power__diff,axiom,
    ! [A: code_natural,N: nat,M: nat] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( power_7079662738309270450atural @ A @ ( minus_minus_nat @ M @ N ) )
          = ( divide5121882707175180666atural @ ( power_7079662738309270450atural @ A @ M ) @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ) ).

% power_diff
thf(fact_3350_div__geq,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( ( divide_divide_nat @ M @ N )
          = ( suc @ ( divide_divide_nat @ ( minus_minus_nat @ M @ N ) @ N ) ) ) ) ) ).

% div_geq
thf(fact_3351_verit__less__mono__div__int2,axiom,
    ! [A3: int,B3: int,N: int] :
      ( ( ord_less_eq_int @ A3 @ B3 )
     => ( ( ord_less_int @ zero_zero_int @ ( uminus_uminus_int @ N ) )
       => ( ord_less_eq_int @ ( divide_divide_int @ B3 @ N ) @ ( divide_divide_int @ A3 @ N ) ) ) ) ).

% verit_less_mono_div_int2
thf(fact_3352_le__minus__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ) ) ) ) ).

% le_minus_divide_eq
thf(fact_3353_minus__divide__le__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ) ) ) ) ).

% minus_divide_le_eq
thf(fact_3354_neg__le__minus__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
        = ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% neg_le_minus_divide_eq
thf(fact_3355_neg__minus__divide__le__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
        = ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) ) ) ).

% neg_minus_divide_le_eq
thf(fact_3356_pos__le__minus__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
        = ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) ) ) ).

% pos_le_minus_divide_eq
thf(fact_3357_pos__minus__divide__le__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
        = ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% pos_minus_divide_le_eq
thf(fact_3358_scaling__mono,axiom,
    ! [U: rat,V: rat,R: rat,S: rat] :
      ( ( ord_less_eq_rat @ U @ V )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ R )
       => ( ( ord_less_eq_rat @ R @ S )
         => ( ord_less_eq_rat @ ( plus_plus_rat @ U @ ( divide_divide_rat @ ( times_times_rat @ R @ ( minus_minus_rat @ V @ U ) ) @ S ) ) @ V ) ) ) ) ).

% scaling_mono
thf(fact_3359_nat__approx__posE,axiom,
    ! [E: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ E )
     => ~ ! [N2: nat] :
            ~ ( ord_less_rat @ ( divide_divide_rat @ one_one_rat @ ( semiri681578069525770553at_rat @ ( suc @ N2 ) ) ) @ E ) ) ).

% nat_approx_posE
thf(fact_3360_ceiling__divide__upper,axiom,
    ! [Q2: rat,P4: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Q2 )
     => ( ord_less_eq_rat @ P4 @ ( times_times_rat @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ ( divide_divide_rat @ P4 @ Q2 ) ) ) @ Q2 ) ) ) ).

% ceiling_divide_upper
thf(fact_3361_div__mult__self1,axiom,
    ! [B: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ A @ ( times_times_int @ C @ B ) ) @ B )
        = ( plus_plus_int @ C @ ( divide_divide_int @ A @ B ) ) ) ) ).

% div_mult_self1
thf(fact_3362_div__mult__self1,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ ( times_times_nat @ C @ B ) ) @ B )
        = ( plus_plus_nat @ C @ ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_mult_self1
thf(fact_3363_div__mult__self1,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ C @ B ) ) @ B )
        = ( plus_p5714425477246183910nteger @ C @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_mult_self1
thf(fact_3364_div__mult__self1,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ ( times_2397367101498566445atural @ C @ B ) ) @ B )
        = ( plus_p4538020629002901425atural @ C @ ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_mult_self1
thf(fact_3365_div__mult__self2,axiom,
    ! [B: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ A @ ( times_times_int @ B @ C ) ) @ B )
        = ( plus_plus_int @ C @ ( divide_divide_int @ A @ B ) ) ) ) ).

% div_mult_self2
thf(fact_3366_div__mult__self2,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ ( times_times_nat @ B @ C ) ) @ B )
        = ( plus_plus_nat @ C @ ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_mult_self2
thf(fact_3367_div__mult__self2,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) ) @ B )
        = ( plus_p5714425477246183910nteger @ C @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_mult_self2
thf(fact_3368_div__mult__self2,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ ( times_2397367101498566445atural @ B @ C ) ) @ B )
        = ( plus_p4538020629002901425atural @ C @ ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_mult_self2
thf(fact_3369_div__mult__self3,axiom,
    ! [B: int,C: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ ( times_times_int @ C @ B ) @ A ) @ B )
        = ( plus_plus_int @ C @ ( divide_divide_int @ A @ B ) ) ) ) ).

% div_mult_self3
thf(fact_3370_div__mult__self3,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ ( times_times_nat @ C @ B ) @ A ) @ B )
        = ( plus_plus_nat @ C @ ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_mult_self3
thf(fact_3371_div__mult__self3,axiom,
    ! [B: code_integer,C: code_integer,A: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ C @ B ) @ A ) @ B )
        = ( plus_p5714425477246183910nteger @ C @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_mult_self3
thf(fact_3372_div__mult__self3,axiom,
    ! [B: code_natural,C: code_natural,A: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ C @ B ) @ A ) @ B )
        = ( plus_p4538020629002901425atural @ C @ ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_mult_self3
thf(fact_3373_div__mult__self4,axiom,
    ! [B: int,C: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ ( times_times_int @ B @ C ) @ A ) @ B )
        = ( plus_plus_int @ C @ ( divide_divide_int @ A @ B ) ) ) ) ).

% div_mult_self4
thf(fact_3374_div__mult__self4,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ ( times_times_nat @ B @ C ) @ A ) @ B )
        = ( plus_plus_nat @ C @ ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_mult_self4
thf(fact_3375_div__mult__self4,axiom,
    ! [B: code_integer,C: code_integer,A: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ C ) @ A ) @ B )
        = ( plus_p5714425477246183910nteger @ C @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_mult_self4
thf(fact_3376_div__mult__self4,axiom,
    ! [B: code_natural,C: code_natural,A: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ B @ C ) @ A ) @ B )
        = ( plus_p4538020629002901425atural @ C @ ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_mult_self4
thf(fact_3377_div__mult__self1__is__m,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( divide_divide_nat @ ( times_times_nat @ N @ M ) @ N )
        = M ) ) ).

% div_mult_self1_is_m
thf(fact_3378_div__mult__self__is__m,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( divide_divide_nat @ ( times_times_nat @ M @ N ) @ N )
        = M ) ) ).

% div_mult_self_is_m
thf(fact_3379_div__mult__mult1,axiom,
    ! [C: int,A: int,B: int] :
      ( ( C != zero_zero_int )
     => ( ( divide_divide_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( divide_divide_int @ A @ B ) ) ) ).

% div_mult_mult1
thf(fact_3380_div__mult__mult1,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( C != zero_zero_nat )
     => ( ( divide_divide_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
        = ( divide_divide_nat @ A @ B ) ) ) ).

% div_mult_mult1
thf(fact_3381_div__mult__mult1,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( C != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( divide6298287555418463151nteger @ A @ B ) ) ) ).

% div_mult_mult1
thf(fact_3382_div__mult__mult1,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( C != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) )
        = ( divide5121882707175180666atural @ A @ B ) ) ) ).

% div_mult_mult1
thf(fact_3383_div__mult__mult2,axiom,
    ! [C: int,A: int,B: int] :
      ( ( C != zero_zero_int )
     => ( ( divide_divide_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
        = ( divide_divide_int @ A @ B ) ) ) ).

% div_mult_mult2
thf(fact_3384_div__mult__mult2,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( C != zero_zero_nat )
     => ( ( divide_divide_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) )
        = ( divide_divide_nat @ A @ B ) ) ) ).

% div_mult_mult2
thf(fact_3385_div__mult__mult2,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( C != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
        = ( divide6298287555418463151nteger @ A @ B ) ) ) ).

% div_mult_mult2
thf(fact_3386_div__mult__mult2,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( C != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ C ) )
        = ( divide5121882707175180666atural @ A @ B ) ) ) ).

% div_mult_mult2
thf(fact_3387_div__mult__mult1__if,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ( C = zero_zero_int )
       => ( ( divide_divide_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
          = zero_zero_int ) )
      & ( ( C != zero_zero_int )
       => ( ( divide_divide_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
          = ( divide_divide_int @ A @ B ) ) ) ) ).

% div_mult_mult1_if
thf(fact_3388_div__mult__mult1__if,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ( C = zero_zero_nat )
       => ( ( divide_divide_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
          = zero_zero_nat ) )
      & ( ( C != zero_zero_nat )
       => ( ( divide_divide_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
          = ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_mult_mult1_if
thf(fact_3389_div__mult__mult1__if,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ( C = zero_z3403309356797280102nteger )
       => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
          = zero_z3403309356797280102nteger ) )
      & ( ( C != zero_z3403309356797280102nteger )
       => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
          = ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_mult_mult1_if
thf(fact_3390_div__mult__mult1__if,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( ( C = zero_z2226904508553997617atural )
       => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) )
          = zero_z2226904508553997617atural ) )
      & ( ( C != zero_z2226904508553997617atural )
       => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) )
          = ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_mult_mult1_if
thf(fact_3391_div__minus1__right,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ A @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ A ) ) ).

% div_minus1_right
thf(fact_3392_div__minus1__right,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ A @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( uminus1351360451143612070nteger @ A ) ) ).

% div_minus1_right
thf(fact_3393_div__by__Suc__0,axiom,
    ! [M: nat] :
      ( ( divide_divide_nat @ M @ ( suc @ zero_zero_nat ) )
      = M ) ).

% div_by_Suc_0
thf(fact_3394_div__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( divide_divide_nat @ M @ N )
        = zero_zero_nat ) ) ).

% div_less
thf(fact_3395_Euclidean__Division_Odiv__eq__0__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( divide_divide_nat @ M @ N )
        = zero_zero_nat )
      = ( ( ord_less_nat @ M @ N )
        | ( N = zero_zero_nat ) ) ) ).

% Euclidean_Division.div_eq_0_iff
thf(fact_3396_div__le__mono2,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( ord_less_eq_nat @ ( divide_divide_nat @ K @ N ) @ ( divide_divide_nat @ K @ M ) ) ) ) ).

% div_le_mono2
thf(fact_3397_div__greater__zero__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ M @ N ) )
      = ( ( ord_less_eq_nat @ N @ M )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% div_greater_zero_iff
thf(fact_3398_div__less__iff__less__mult,axiom,
    ! [Q2: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ Q2 )
     => ( ( ord_less_nat @ ( divide_divide_nat @ M @ Q2 ) @ N )
        = ( ord_less_nat @ M @ ( times_times_nat @ N @ Q2 ) ) ) ) ).

% div_less_iff_less_mult
thf(fact_3399_div__eq__dividend__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ( divide_divide_nat @ M @ N )
          = M )
        = ( N = one_one_nat ) ) ) ).

% div_eq_dividend_iff
thf(fact_3400_div__less__dividend,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ one_one_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_nat @ ( divide_divide_nat @ M @ N ) @ M ) ) ) ).

% div_less_dividend
thf(fact_3401_div__add__self2,axiom,
    ! [B: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ A @ B ) @ B )
        = ( plus_plus_int @ ( divide_divide_int @ A @ B ) @ one_one_int ) ) ) ).

% div_add_self2
thf(fact_3402_div__add__self2,axiom,
    ! [B: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ B ) @ B )
        = ( plus_plus_nat @ ( divide_divide_nat @ A @ B ) @ one_one_nat ) ) ) ).

% div_add_self2
thf(fact_3403_div__add__self2,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
        = ( plus_p5714425477246183910nteger @ ( divide6298287555418463151nteger @ A @ B ) @ one_one_Code_integer ) ) ) ).

% div_add_self2
thf(fact_3404_div__add__self2,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ B ) @ B )
        = ( plus_p4538020629002901425atural @ ( divide5121882707175180666atural @ A @ B ) @ one_one_Code_natural ) ) ) ).

% div_add_self2
thf(fact_3405_div__add__self1,axiom,
    ! [B: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ B @ A ) @ B )
        = ( plus_plus_int @ ( divide_divide_int @ A @ B ) @ one_one_int ) ) ) ).

% div_add_self1
thf(fact_3406_div__add__self1,axiom,
    ! [B: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ B @ A ) @ B )
        = ( plus_plus_nat @ ( divide_divide_nat @ A @ B ) @ one_one_nat ) ) ) ).

% div_add_self1
thf(fact_3407_div__add__self1,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ B @ A ) @ B )
        = ( plus_p5714425477246183910nteger @ ( divide6298287555418463151nteger @ A @ B ) @ one_one_Code_integer ) ) ) ).

% div_add_self1
thf(fact_3408_div__add__self1,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ B @ A ) @ B )
        = ( plus_p4538020629002901425atural @ ( divide5121882707175180666atural @ A @ B ) @ one_one_Code_natural ) ) ) ).

% div_add_self1
thf(fact_3409_div__if,axiom,
    ( divide_divide_nat
    = ( ^ [M5: nat,N5: nat] :
          ( if_nat
          @ ( ( ord_less_nat @ M5 @ N5 )
            | ( N5 = zero_zero_nat ) )
          @ zero_zero_nat
          @ ( suc @ ( divide_divide_nat @ ( minus_minus_nat @ M5 @ N5 ) @ N5 ) ) ) ) ) ).

% div_if
thf(fact_3410_less__eq__div__iff__mult__less__eq,axiom,
    ! [Q2: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ Q2 )
     => ( ( ord_less_eq_nat @ M @ ( divide_divide_nat @ N @ Q2 ) )
        = ( ord_less_eq_nat @ ( times_times_nat @ M @ Q2 ) @ N ) ) ) ).

% less_eq_div_iff_mult_less_eq
thf(fact_3411_dividend__less__times__div,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ M @ ( plus_plus_nat @ N @ ( times_times_nat @ N @ ( divide_divide_nat @ M @ N ) ) ) ) ) ).

% dividend_less_times_div
thf(fact_3412_dividend__less__div__times,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ M @ ( plus_plus_nat @ N @ ( times_times_nat @ ( divide_divide_nat @ M @ N ) @ N ) ) ) ) ).

% dividend_less_div_times
thf(fact_3413_split__div,axiom,
    ! [P: nat > $o,M: nat,N: nat] :
      ( ( P @ ( divide_divide_nat @ M @ N ) )
      = ( ( ( N = zero_zero_nat )
         => ( P @ zero_zero_nat ) )
        & ( ( N != zero_zero_nat )
         => ! [I2: nat,J3: nat] :
              ( ( ord_less_nat @ J3 @ N )
             => ( ( M
                  = ( plus_plus_nat @ ( times_times_nat @ N @ I2 ) @ J3 ) )
               => ( P @ I2 ) ) ) ) ) ) ).

% split_div
thf(fact_3414_le__div__geq,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( divide_divide_nat @ M @ N )
          = ( suc @ ( divide_divide_nat @ ( minus_minus_nat @ M @ N ) @ N ) ) ) ) ) ).

% le_div_geq
thf(fact_3415_split__div_H,axiom,
    ! [P: nat > $o,M: nat,N: nat] :
      ( ( P @ ( divide_divide_nat @ M @ N ) )
      = ( ( ( N = zero_zero_nat )
          & ( P @ zero_zero_nat ) )
        | ? [Q4: nat] :
            ( ( ord_less_eq_nat @ ( times_times_nat @ N @ Q4 ) @ M )
            & ( ord_less_nat @ M @ ( times_times_nat @ N @ ( suc @ Q4 ) ) )
            & ( P @ Q4 ) ) ) ) ).

% split_div'
thf(fact_3416_power__diff__power__eq,axiom,
    ! [A: int,N: nat,M: nat] :
      ( ( A != zero_zero_int )
     => ( ( ( ord_less_eq_nat @ N @ M )
         => ( ( divide_divide_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
            = ( power_power_int @ A @ ( minus_minus_nat @ M @ N ) ) ) )
        & ( ~ ( ord_less_eq_nat @ N @ M )
         => ( ( divide_divide_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
            = ( divide_divide_int @ one_one_int @ ( power_power_int @ A @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% power_diff_power_eq
thf(fact_3417_power__diff__power__eq,axiom,
    ! [A: nat,N: nat,M: nat] :
      ( ( A != zero_zero_nat )
     => ( ( ( ord_less_eq_nat @ N @ M )
         => ( ( divide_divide_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
            = ( power_power_nat @ A @ ( minus_minus_nat @ M @ N ) ) ) )
        & ( ~ ( ord_less_eq_nat @ N @ M )
         => ( ( divide_divide_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
            = ( divide_divide_nat @ one_one_nat @ ( power_power_nat @ A @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% power_diff_power_eq
thf(fact_3418_power__diff__power__eq,axiom,
    ! [A: code_integer,N: nat,M: nat] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( ( ord_less_eq_nat @ N @ M )
         => ( ( divide6298287555418463151nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) )
            = ( power_8256067586552552935nteger @ A @ ( minus_minus_nat @ M @ N ) ) ) )
        & ( ~ ( ord_less_eq_nat @ N @ M )
         => ( ( divide6298287555418463151nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) )
            = ( divide6298287555418463151nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ A @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% power_diff_power_eq
thf(fact_3419_power__diff__power__eq,axiom,
    ! [A: code_natural,N: nat,M: nat] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( ( ord_less_eq_nat @ N @ M )
         => ( ( divide5121882707175180666atural @ ( power_7079662738309270450atural @ A @ M ) @ ( power_7079662738309270450atural @ A @ N ) )
            = ( power_7079662738309270450atural @ A @ ( minus_minus_nat @ M @ N ) ) ) )
        & ( ~ ( ord_less_eq_nat @ N @ M )
         => ( ( divide5121882707175180666atural @ ( power_7079662738309270450atural @ A @ M ) @ ( power_7079662738309270450atural @ A @ N ) )
            = ( divide5121882707175180666atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ A @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% power_diff_power_eq
thf(fact_3420_bits__div__by__1,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ A @ one_one_int )
      = A ) ).

% bits_div_by_1
thf(fact_3421_bits__div__by__1,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ A @ one_one_nat )
      = A ) ).

% bits_div_by_1
thf(fact_3422_bits__div__by__1,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ A @ one_one_Code_integer )
      = A ) ).

% bits_div_by_1
thf(fact_3423_bits__div__by__1,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ A @ one_one_Code_natural )
      = A ) ).

% bits_div_by_1
thf(fact_3424_bits__div__by__0,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ A @ zero_zero_int )
      = zero_zero_int ) ).

% bits_div_by_0
thf(fact_3425_bits__div__by__0,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ A @ zero_zero_nat )
      = zero_zero_nat ) ).

% bits_div_by_0
thf(fact_3426_bits__div__by__0,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ A @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% bits_div_by_0
thf(fact_3427_bits__div__by__0,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ A @ zero_z2226904508553997617atural )
      = zero_z2226904508553997617atural ) ).

% bits_div_by_0
thf(fact_3428_bits__div__0,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% bits_div_0
thf(fact_3429_bits__div__0,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% bits_div_0
thf(fact_3430_bits__div__0,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% bits_div_0
thf(fact_3431_bits__div__0,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% bits_div_0
thf(fact_3432_divide__int__def,axiom,
    ( divide_divide_int
    = ( ^ [K3: int,L4: int] :
          ( if_int @ ( L4 = zero_zero_int ) @ zero_zero_int
          @ ( if_int
            @ ( ( sgn_sgn_int @ K3 )
              = ( sgn_sgn_int @ L4 ) )
            @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ ( nat2 @ ( abs_abs_int @ K3 ) ) @ ( nat2 @ ( abs_abs_int @ L4 ) ) ) )
            @ ( uminus_uminus_int
              @ ( semiri1314217659103216013at_int
                @ ( plus_plus_nat @ ( divide_divide_nat @ ( nat2 @ ( abs_abs_int @ K3 ) ) @ ( nat2 @ ( abs_abs_int @ L4 ) ) )
                  @ ( zero_n2687167440665602831ol_nat
                    @ ~ ( dvd_dvd_int @ L4 @ K3 ) ) ) ) ) ) ) ) ) ).

% divide_int_def
thf(fact_3433_divide__int__unfold,axiom,
    ! [L: int,K: int,N: nat,M: nat] :
      ( ( ( ( ( sgn_sgn_int @ L )
            = zero_zero_int )
          | ( ( sgn_sgn_int @ K )
            = zero_zero_int )
          | ( N = zero_zero_nat ) )
       => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
          = zero_zero_int ) )
      & ( ~ ( ( ( sgn_sgn_int @ L )
              = zero_zero_int )
            | ( ( sgn_sgn_int @ K )
              = zero_zero_int )
            | ( N = zero_zero_nat ) )
       => ( ( ( ( sgn_sgn_int @ K )
              = ( sgn_sgn_int @ L ) )
           => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( semiri1314217659103216013at_int @ ( divide_divide_nat @ M @ N ) ) ) )
          & ( ( ( sgn_sgn_int @ K )
             != ( sgn_sgn_int @ L ) )
           => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( uminus_uminus_int
                @ ( semiri1314217659103216013at_int
                  @ ( plus_plus_nat @ ( divide_divide_nat @ M @ N )
                    @ ( zero_n2687167440665602831ol_nat
                      @ ~ ( dvd_dvd_nat @ N @ M ) ) ) ) ) ) ) ) ) ) ).

% divide_int_unfold
thf(fact_3434_normalize__negative,axiom,
    ! [Q2: int,P4: int] :
      ( ( ord_less_int @ Q2 @ zero_zero_int )
     => ( ( normalize @ ( product_Pair_int_int @ P4 @ Q2 ) )
        = ( normalize @ ( product_Pair_int_int @ ( uminus_uminus_int @ P4 ) @ ( uminus_uminus_int @ Q2 ) ) ) ) ) ).

% normalize_negative
thf(fact_3435_gbinomial__code,axiom,
    ( gbinomial_rat
    = ( ^ [A4: rat,K3: nat] :
          ( if_rat @ ( K3 = zero_zero_nat ) @ one_one_rat
          @ ( divide_divide_rat
            @ ( set_fo1949268297981939178at_rat
              @ ^ [L4: nat] : ( times_times_rat @ ( minus_minus_rat @ A4 @ ( semiri681578069525770553at_rat @ L4 ) ) )
              @ zero_zero_nat
              @ ( minus_minus_nat @ K3 @ one_one_nat )
              @ one_one_rat )
            @ ( semiri773545260158071498ct_rat @ K3 ) ) ) ) ) ).

% gbinomial_code
thf(fact_3436_dvd__0__right,axiom,
    ! [A: nat] : ( dvd_dvd_nat @ A @ zero_zero_nat ) ).

% dvd_0_right
thf(fact_3437_dvd__0__right,axiom,
    ! [A: int] : ( dvd_dvd_int @ A @ zero_zero_int ) ).

% dvd_0_right
thf(fact_3438_dvd__0__right,axiom,
    ! [A: code_integer] : ( dvd_dvd_Code_integer @ A @ zero_z3403309356797280102nteger ) ).

% dvd_0_right
thf(fact_3439_dvd__0__right,axiom,
    ! [A: rat] : ( dvd_dvd_rat @ A @ zero_zero_rat ) ).

% dvd_0_right
thf(fact_3440_dvd__0__right,axiom,
    ! [A: code_natural] : ( dvd_dvd_Code_natural @ A @ zero_z2226904508553997617atural ) ).

% dvd_0_right
thf(fact_3441_dvd__0__left__iff,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ zero_zero_nat @ A )
      = ( A = zero_zero_nat ) ) ).

% dvd_0_left_iff
thf(fact_3442_dvd__0__left__iff,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ zero_zero_int @ A )
      = ( A = zero_zero_int ) ) ).

% dvd_0_left_iff
thf(fact_3443_dvd__0__left__iff,axiom,
    ! [A: code_integer] :
      ( ( dvd_dvd_Code_integer @ zero_z3403309356797280102nteger @ A )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% dvd_0_left_iff
thf(fact_3444_dvd__0__left__iff,axiom,
    ! [A: rat] :
      ( ( dvd_dvd_rat @ zero_zero_rat @ A )
      = ( A = zero_zero_rat ) ) ).

% dvd_0_left_iff
thf(fact_3445_dvd__0__left__iff,axiom,
    ! [A: code_natural] :
      ( ( dvd_dvd_Code_natural @ zero_z2226904508553997617atural @ A )
      = ( A = zero_z2226904508553997617atural ) ) ).

% dvd_0_left_iff
thf(fact_3446_dvd__add__triv__left__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( dvd_dvd_Code_integer @ A @ B ) ) ).

% dvd_add_triv_left_iff
thf(fact_3447_dvd__add__triv__left__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( dvd_dvd_rat @ A @ ( plus_plus_rat @ A @ B ) )
      = ( dvd_dvd_rat @ A @ B ) ) ).

% dvd_add_triv_left_iff
thf(fact_3448_dvd__add__triv__left__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( dvd_dvd_nat @ A @ B ) ) ).

% dvd_add_triv_left_iff
thf(fact_3449_dvd__add__triv__left__iff,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ ( plus_plus_int @ A @ B ) )
      = ( dvd_dvd_int @ A @ B ) ) ).

% dvd_add_triv_left_iff
thf(fact_3450_dvd__add__triv__right__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ ( plus_p5714425477246183910nteger @ B @ A ) )
      = ( dvd_dvd_Code_integer @ A @ B ) ) ).

% dvd_add_triv_right_iff
thf(fact_3451_dvd__add__triv__right__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( dvd_dvd_rat @ A @ ( plus_plus_rat @ B @ A ) )
      = ( dvd_dvd_rat @ A @ B ) ) ).

% dvd_add_triv_right_iff
thf(fact_3452_dvd__add__triv__right__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( dvd_dvd_nat @ A @ B ) ) ).

% dvd_add_triv_right_iff
thf(fact_3453_dvd__add__triv__right__iff,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ ( plus_plus_int @ B @ A ) )
      = ( dvd_dvd_int @ A @ B ) ) ).

% dvd_add_triv_right_iff
thf(fact_3454_minus__dvd__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( dvd_dvd_int @ ( uminus_uminus_int @ X ) @ Y3 )
      = ( dvd_dvd_int @ X @ Y3 ) ) ).

% minus_dvd_iff
thf(fact_3455_minus__dvd__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( uminus1351360451143612070nteger @ X ) @ Y3 )
      = ( dvd_dvd_Code_integer @ X @ Y3 ) ) ).

% minus_dvd_iff
thf(fact_3456_minus__dvd__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( dvd_dvd_rat @ ( uminus_uminus_rat @ X ) @ Y3 )
      = ( dvd_dvd_rat @ X @ Y3 ) ) ).

% minus_dvd_iff
thf(fact_3457_dvd__minus__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( dvd_dvd_int @ X @ ( uminus_uminus_int @ Y3 ) )
      = ( dvd_dvd_int @ X @ Y3 ) ) ).

% dvd_minus_iff
thf(fact_3458_dvd__minus__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( dvd_dvd_Code_integer @ X @ ( uminus1351360451143612070nteger @ Y3 ) )
      = ( dvd_dvd_Code_integer @ X @ Y3 ) ) ).

% dvd_minus_iff
thf(fact_3459_dvd__minus__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( dvd_dvd_rat @ X @ ( uminus_uminus_rat @ Y3 ) )
      = ( dvd_dvd_rat @ X @ Y3 ) ) ).

% dvd_minus_iff
thf(fact_3460_div__dvd__div,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ A @ C )
       => ( ( dvd_dvd_int @ ( divide_divide_int @ B @ A ) @ ( divide_divide_int @ C @ A ) )
          = ( dvd_dvd_int @ B @ C ) ) ) ) ).

% div_dvd_div
thf(fact_3461_div__dvd__div,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ A @ C )
       => ( ( dvd_dvd_nat @ ( divide_divide_nat @ B @ A ) @ ( divide_divide_nat @ C @ A ) )
          = ( dvd_dvd_nat @ B @ C ) ) ) ) ).

% div_dvd_div
thf(fact_3462_div__dvd__div,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ B )
     => ( ( dvd_dvd_Code_integer @ A @ C )
       => ( ( dvd_dvd_Code_integer @ ( divide6298287555418463151nteger @ B @ A ) @ ( divide6298287555418463151nteger @ C @ A ) )
          = ( dvd_dvd_Code_integer @ B @ C ) ) ) ) ).

% div_dvd_div
thf(fact_3463_div__dvd__div,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ B )
     => ( ( dvd_dvd_Code_natural @ A @ C )
       => ( ( dvd_dvd_Code_natural @ ( divide5121882707175180666atural @ B @ A ) @ ( divide5121882707175180666atural @ C @ A ) )
          = ( dvd_dvd_Code_natural @ B @ C ) ) ) ) ).

% div_dvd_div
thf(fact_3464_dvd__abs__iff,axiom,
    ! [M: int,K: int] :
      ( ( dvd_dvd_int @ M @ ( abs_abs_int @ K ) )
      = ( dvd_dvd_int @ M @ K ) ) ).

% dvd_abs_iff
thf(fact_3465_dvd__abs__iff,axiom,
    ! [M: code_integer,K: code_integer] :
      ( ( dvd_dvd_Code_integer @ M @ ( abs_abs_Code_integer @ K ) )
      = ( dvd_dvd_Code_integer @ M @ K ) ) ).

% dvd_abs_iff
thf(fact_3466_dvd__abs__iff,axiom,
    ! [M: rat,K: rat] :
      ( ( dvd_dvd_rat @ M @ ( abs_abs_rat @ K ) )
      = ( dvd_dvd_rat @ M @ K ) ) ).

% dvd_abs_iff
thf(fact_3467_abs__dvd__iff,axiom,
    ! [M: int,K: int] :
      ( ( dvd_dvd_int @ ( abs_abs_int @ M ) @ K )
      = ( dvd_dvd_int @ M @ K ) ) ).

% abs_dvd_iff
thf(fact_3468_abs__dvd__iff,axiom,
    ! [M: code_integer,K: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( abs_abs_Code_integer @ M ) @ K )
      = ( dvd_dvd_Code_integer @ M @ K ) ) ).

% abs_dvd_iff
thf(fact_3469_abs__dvd__iff,axiom,
    ! [M: rat,K: rat] :
      ( ( dvd_dvd_rat @ ( abs_abs_rat @ M ) @ K )
      = ( dvd_dvd_rat @ M @ K ) ) ).

% abs_dvd_iff
thf(fact_3470_nat__dvd__1__iff__1,axiom,
    ! [M: nat] :
      ( ( dvd_dvd_nat @ M @ one_one_nat )
      = ( M = one_one_nat ) ) ).

% nat_dvd_1_iff_1
thf(fact_3471_dvd__mult__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
      = ( ( C = zero_zero_int )
        | ( dvd_dvd_int @ A @ B ) ) ) ).

% dvd_mult_cancel_left
thf(fact_3472_dvd__mult__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( dvd_dvd_Code_integer @ A @ B ) ) ) ).

% dvd_mult_cancel_left
thf(fact_3473_dvd__mult__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( dvd_dvd_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
      = ( ( C = zero_zero_rat )
        | ( dvd_dvd_rat @ A @ B ) ) ) ).

% dvd_mult_cancel_left
thf(fact_3474_dvd__mult__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
      = ( ( C = zero_zero_int )
        | ( dvd_dvd_int @ A @ B ) ) ) ).

% dvd_mult_cancel_right
thf(fact_3475_dvd__mult__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( dvd_dvd_Code_integer @ A @ B ) ) ) ).

% dvd_mult_cancel_right
thf(fact_3476_dvd__mult__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( dvd_dvd_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
      = ( ( C = zero_zero_rat )
        | ( dvd_dvd_rat @ A @ B ) ) ) ).

% dvd_mult_cancel_right
thf(fact_3477_dvd__times__left__cancel__iff,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( dvd_dvd_Code_natural @ ( times_2397367101498566445atural @ A @ B ) @ ( times_2397367101498566445atural @ A @ C ) )
        = ( dvd_dvd_Code_natural @ B @ C ) ) ) ).

% dvd_times_left_cancel_iff
thf(fact_3478_dvd__times__left__cancel__iff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( A != zero_zero_nat )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) )
        = ( dvd_dvd_nat @ B @ C ) ) ) ).

% dvd_times_left_cancel_iff
thf(fact_3479_dvd__times__left__cancel__iff,axiom,
    ! [A: int,B: int,C: int] :
      ( ( A != zero_zero_int )
     => ( ( dvd_dvd_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) )
        = ( dvd_dvd_int @ B @ C ) ) ) ).

% dvd_times_left_cancel_iff
thf(fact_3480_dvd__times__left__cancel__iff,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) )
        = ( dvd_dvd_Code_integer @ B @ C ) ) ) ).

% dvd_times_left_cancel_iff
thf(fact_3481_dvd__times__right__cancel__iff,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( dvd_dvd_Code_natural @ ( times_2397367101498566445atural @ B @ A ) @ ( times_2397367101498566445atural @ C @ A ) )
        = ( dvd_dvd_Code_natural @ B @ C ) ) ) ).

% dvd_times_right_cancel_iff
thf(fact_3482_dvd__times__right__cancel__iff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( A != zero_zero_nat )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ B @ A ) @ ( times_times_nat @ C @ A ) )
        = ( dvd_dvd_nat @ B @ C ) ) ) ).

% dvd_times_right_cancel_iff
thf(fact_3483_dvd__times__right__cancel__iff,axiom,
    ! [A: int,B: int,C: int] :
      ( ( A != zero_zero_int )
     => ( ( dvd_dvd_int @ ( times_times_int @ B @ A ) @ ( times_times_int @ C @ A ) )
        = ( dvd_dvd_int @ B @ C ) ) ) ).

% dvd_times_right_cancel_iff
thf(fact_3484_dvd__times__right__cancel__iff,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ B @ A ) @ ( times_3573771949741848930nteger @ C @ A ) )
        = ( dvd_dvd_Code_integer @ B @ C ) ) ) ).

% dvd_times_right_cancel_iff
thf(fact_3485_dvd__add__times__triv__left__iff,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ ( plus_plus_nat @ ( times_times_nat @ C @ A ) @ B ) )
      = ( dvd_dvd_nat @ A @ B ) ) ).

% dvd_add_times_triv_left_iff
thf(fact_3486_dvd__add__times__triv__left__iff,axiom,
    ! [A: int,C: int,B: int] :
      ( ( dvd_dvd_int @ A @ ( plus_plus_int @ ( times_times_int @ C @ A ) @ B ) )
      = ( dvd_dvd_int @ A @ B ) ) ).

% dvd_add_times_triv_left_iff
thf(fact_3487_dvd__add__times__triv__left__iff,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ C @ A ) @ B ) )
      = ( dvd_dvd_Code_integer @ A @ B ) ) ).

% dvd_add_times_triv_left_iff
thf(fact_3488_dvd__add__times__triv__left__iff,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( dvd_dvd_rat @ A @ ( plus_plus_rat @ ( times_times_rat @ C @ A ) @ B ) )
      = ( dvd_dvd_rat @ A @ B ) ) ).

% dvd_add_times_triv_left_iff
thf(fact_3489_dvd__add__times__triv__right__iff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ ( plus_plus_nat @ B @ ( times_times_nat @ C @ A ) ) )
      = ( dvd_dvd_nat @ A @ B ) ) ).

% dvd_add_times_triv_right_iff
thf(fact_3490_dvd__add__times__triv__right__iff,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ ( plus_plus_int @ B @ ( times_times_int @ C @ A ) ) )
      = ( dvd_dvd_int @ A @ B ) ) ).

% dvd_add_times_triv_right_iff
thf(fact_3491_dvd__add__times__triv__right__iff,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ ( plus_p5714425477246183910nteger @ B @ ( times_3573771949741848930nteger @ C @ A ) ) )
      = ( dvd_dvd_Code_integer @ A @ B ) ) ).

% dvd_add_times_triv_right_iff
thf(fact_3492_dvd__add__times__triv__right__iff,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( dvd_dvd_rat @ A @ ( plus_plus_rat @ B @ ( times_times_rat @ C @ A ) ) )
      = ( dvd_dvd_rat @ A @ B ) ) ).

% dvd_add_times_triv_right_iff
thf(fact_3493_unit__prod,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
       => ( dvd_dvd_Code_natural @ ( times_2397367101498566445atural @ A @ B ) @ one_one_Code_natural ) ) ) ).

% unit_prod
thf(fact_3494_unit__prod,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( dvd_dvd_nat @ B @ one_one_nat )
       => ( dvd_dvd_nat @ ( times_times_nat @ A @ B ) @ one_one_nat ) ) ) ).

% unit_prod
thf(fact_3495_unit__prod,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( dvd_dvd_int @ B @ one_one_int )
       => ( dvd_dvd_int @ ( times_times_int @ A @ B ) @ one_one_int ) ) ) ).

% unit_prod
thf(fact_3496_unit__prod,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
       => ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) @ one_one_Code_integer ) ) ) ).

% unit_prod
thf(fact_3497_dvd__div__mult__self,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( times_times_int @ ( divide_divide_int @ B @ A ) @ A )
        = B ) ) ).

% dvd_div_mult_self
thf(fact_3498_dvd__div__mult__self,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( times_times_nat @ ( divide_divide_nat @ B @ A ) @ A )
        = B ) ) ).

% dvd_div_mult_self
thf(fact_3499_dvd__div__mult__self,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ B )
     => ( ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ B @ A ) @ A )
        = B ) ) ).

% dvd_div_mult_self
thf(fact_3500_dvd__div__mult__self,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ B )
     => ( ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ B @ A ) @ A )
        = B ) ) ).

% dvd_div_mult_self
thf(fact_3501_dvd__mult__div__cancel,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( times_times_int @ A @ ( divide_divide_int @ B @ A ) )
        = B ) ) ).

% dvd_mult_div_cancel
thf(fact_3502_dvd__mult__div__cancel,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( times_times_nat @ A @ ( divide_divide_nat @ B @ A ) )
        = B ) ) ).

% dvd_mult_div_cancel
thf(fact_3503_dvd__mult__div__cancel,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ B )
     => ( ( times_3573771949741848930nteger @ A @ ( divide6298287555418463151nteger @ B @ A ) )
        = B ) ) ).

% dvd_mult_div_cancel
thf(fact_3504_dvd__mult__div__cancel,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ B )
     => ( ( times_2397367101498566445atural @ A @ ( divide5121882707175180666atural @ B @ A ) )
        = B ) ) ).

% dvd_mult_div_cancel
thf(fact_3505_div__add,axiom,
    ! [C: int,A: int,B: int] :
      ( ( dvd_dvd_int @ C @ A )
     => ( ( dvd_dvd_int @ C @ B )
       => ( ( divide_divide_int @ ( plus_plus_int @ A @ B ) @ C )
          = ( plus_plus_int @ ( divide_divide_int @ A @ C ) @ ( divide_divide_int @ B @ C ) ) ) ) ) ).

% div_add
thf(fact_3506_div__add,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( dvd_dvd_nat @ C @ A )
     => ( ( dvd_dvd_nat @ C @ B )
       => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ B ) @ C )
          = ( plus_plus_nat @ ( divide_divide_nat @ A @ C ) @ ( divide_divide_nat @ B @ C ) ) ) ) ) ).

% div_add
thf(fact_3507_div__add,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ A )
     => ( ( dvd_dvd_Code_integer @ C @ B )
       => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
          = ( plus_p5714425477246183910nteger @ ( divide6298287555418463151nteger @ A @ C ) @ ( divide6298287555418463151nteger @ B @ C ) ) ) ) ) ).

% div_add
thf(fact_3508_div__add,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ C @ A )
     => ( ( dvd_dvd_Code_natural @ C @ B )
       => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ B ) @ C )
          = ( plus_p4538020629002901425atural @ ( divide5121882707175180666atural @ A @ C ) @ ( divide5121882707175180666atural @ B @ C ) ) ) ) ) ).

% div_add
thf(fact_3509_unit__div,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( dvd_dvd_int @ B @ one_one_int )
       => ( dvd_dvd_int @ ( divide_divide_int @ A @ B ) @ one_one_int ) ) ) ).

% unit_div
thf(fact_3510_unit__div,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( dvd_dvd_nat @ B @ one_one_nat )
       => ( dvd_dvd_nat @ ( divide_divide_nat @ A @ B ) @ one_one_nat ) ) ) ).

% unit_div
thf(fact_3511_unit__div,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
       => ( dvd_dvd_Code_integer @ ( divide6298287555418463151nteger @ A @ B ) @ one_one_Code_integer ) ) ) ).

% unit_div
thf(fact_3512_unit__div,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
       => ( dvd_dvd_Code_natural @ ( divide5121882707175180666atural @ A @ B ) @ one_one_Code_natural ) ) ) ).

% unit_div
thf(fact_3513_unit__div__1__unit,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( dvd_dvd_int @ ( divide_divide_int @ one_one_int @ A ) @ one_one_int ) ) ).

% unit_div_1_unit
thf(fact_3514_unit__div__1__unit,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( dvd_dvd_nat @ ( divide_divide_nat @ one_one_nat @ A ) @ one_one_nat ) ) ).

% unit_div_1_unit
thf(fact_3515_unit__div__1__unit,axiom,
    ! [A: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ( dvd_dvd_Code_integer @ ( divide6298287555418463151nteger @ one_one_Code_integer @ A ) @ one_one_Code_integer ) ) ).

% unit_div_1_unit
thf(fact_3516_unit__div__1__unit,axiom,
    ! [A: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ( dvd_dvd_Code_natural @ ( divide5121882707175180666atural @ one_one_Code_natural @ A ) @ one_one_Code_natural ) ) ).

% unit_div_1_unit
thf(fact_3517_unit__div__1__div__1,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( divide_divide_int @ one_one_int @ ( divide_divide_int @ one_one_int @ A ) )
        = A ) ) ).

% unit_div_1_div_1
thf(fact_3518_unit__div__1__div__1,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( divide_divide_nat @ one_one_nat @ ( divide_divide_nat @ one_one_nat @ A ) )
        = A ) ) ).

% unit_div_1_div_1
thf(fact_3519_unit__div__1__div__1,axiom,
    ! [A: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ( ( divide6298287555418463151nteger @ one_one_Code_integer @ ( divide6298287555418463151nteger @ one_one_Code_integer @ A ) )
        = A ) ) ).

% unit_div_1_div_1
thf(fact_3520_unit__div__1__div__1,axiom,
    ! [A: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ( ( divide5121882707175180666atural @ one_one_Code_natural @ ( divide5121882707175180666atural @ one_one_Code_natural @ A ) )
        = A ) ) ).

% unit_div_1_div_1
thf(fact_3521_div__diff,axiom,
    ! [C: int,A: int,B: int] :
      ( ( dvd_dvd_int @ C @ A )
     => ( ( dvd_dvd_int @ C @ B )
       => ( ( divide_divide_int @ ( minus_minus_int @ A @ B ) @ C )
          = ( minus_minus_int @ ( divide_divide_int @ A @ C ) @ ( divide_divide_int @ B @ C ) ) ) ) ) ).

% div_diff
thf(fact_3522_div__diff,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ A )
     => ( ( dvd_dvd_Code_integer @ C @ B )
       => ( ( divide6298287555418463151nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
          = ( minus_8373710615458151222nteger @ ( divide6298287555418463151nteger @ A @ C ) @ ( divide6298287555418463151nteger @ B @ C ) ) ) ) ) ).

% div_diff
thf(fact_3523_dvd__1__left,axiom,
    ! [K: nat] : ( dvd_dvd_nat @ ( suc @ zero_zero_nat ) @ K ) ).

% dvd_1_left
thf(fact_3524_dvd__1__iff__1,axiom,
    ! [M: nat] :
      ( ( dvd_dvd_nat @ M @ ( suc @ zero_zero_nat ) )
      = ( M
        = ( suc @ zero_zero_nat ) ) ) ).

% dvd_1_iff_1
thf(fact_3525_nat__mult__dvd__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( K = zero_zero_nat )
        | ( dvd_dvd_nat @ M @ N ) ) ) ).

% nat_mult_dvd_cancel_disj
thf(fact_3526_gbinomial__0_I2_J,axiom,
    ! [K: nat] :
      ( ( gbinomial_nat @ zero_zero_nat @ ( suc @ K ) )
      = zero_zero_nat ) ).

% gbinomial_0(2)
thf(fact_3527_gbinomial__0_I2_J,axiom,
    ! [K: nat] :
      ( ( gbinomial_int @ zero_zero_int @ ( suc @ K ) )
      = zero_zero_int ) ).

% gbinomial_0(2)
thf(fact_3528_gbinomial__0_I2_J,axiom,
    ! [K: nat] :
      ( ( gbinom8545251970709558553nteger @ zero_z3403309356797280102nteger @ ( suc @ K ) )
      = zero_z3403309356797280102nteger ) ).

% gbinomial_0(2)
thf(fact_3529_gbinomial__0_I2_J,axiom,
    ! [K: nat] :
      ( ( gbinomial_rat @ zero_zero_rat @ ( suc @ K ) )
      = zero_zero_rat ) ).

% gbinomial_0(2)
thf(fact_3530_gbinomial__0_I2_J,axiom,
    ! [K: nat] :
      ( ( gbinom7368847122466276068atural @ zero_z2226904508553997617atural @ ( suc @ K ) )
      = zero_z2226904508553997617atural ) ).

% gbinomial_0(2)
thf(fact_3531_gbinomial__0_I1_J,axiom,
    ! [A: nat] :
      ( ( gbinomial_nat @ A @ zero_zero_nat )
      = one_one_nat ) ).

% gbinomial_0(1)
thf(fact_3532_gbinomial__0_I1_J,axiom,
    ! [A: int] :
      ( ( gbinomial_int @ A @ zero_zero_nat )
      = one_one_int ) ).

% gbinomial_0(1)
thf(fact_3533_gbinomial__0_I1_J,axiom,
    ! [A: code_integer] :
      ( ( gbinom8545251970709558553nteger @ A @ zero_zero_nat )
      = one_one_Code_integer ) ).

% gbinomial_0(1)
thf(fact_3534_gbinomial__0_I1_J,axiom,
    ! [A: rat] :
      ( ( gbinomial_rat @ A @ zero_zero_nat )
      = one_one_rat ) ).

% gbinomial_0(1)
thf(fact_3535_gbinomial__0_I1_J,axiom,
    ! [A: code_natural] :
      ( ( gbinom7368847122466276068atural @ A @ zero_zero_nat )
      = one_one_Code_natural ) ).

% gbinomial_0(1)
thf(fact_3536_int__dvd__int__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( dvd_dvd_nat @ M @ N ) ) ).

% int_dvd_int_iff
thf(fact_3537_zdvd1__eq,axiom,
    ! [X: int] :
      ( ( dvd_dvd_int @ X @ one_one_int )
      = ( ( abs_abs_int @ X )
        = one_one_int ) ) ).

% zdvd1_eq
thf(fact_3538_unit__div__mult__self,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( times_times_int @ ( divide_divide_int @ B @ A ) @ A )
        = B ) ) ).

% unit_div_mult_self
thf(fact_3539_unit__div__mult__self,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( times_times_nat @ ( divide_divide_nat @ B @ A ) @ A )
        = B ) ) ).

% unit_div_mult_self
thf(fact_3540_unit__div__mult__self,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ( ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ B @ A ) @ A )
        = B ) ) ).

% unit_div_mult_self
thf(fact_3541_unit__div__mult__self,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ( ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ B @ A ) @ A )
        = B ) ) ).

% unit_div_mult_self
thf(fact_3542_unit__mult__div__div,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( times_times_int @ B @ ( divide_divide_int @ one_one_int @ A ) )
        = ( divide_divide_int @ B @ A ) ) ) ).

% unit_mult_div_div
thf(fact_3543_unit__mult__div__div,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( times_times_nat @ B @ ( divide_divide_nat @ one_one_nat @ A ) )
        = ( divide_divide_nat @ B @ A ) ) ) ).

% unit_mult_div_div
thf(fact_3544_unit__mult__div__div,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ( ( times_3573771949741848930nteger @ B @ ( divide6298287555418463151nteger @ one_one_Code_integer @ A ) )
        = ( divide6298287555418463151nteger @ B @ A ) ) ) ).

% unit_mult_div_div
thf(fact_3545_unit__mult__div__div,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ( ( times_2397367101498566445atural @ B @ ( divide5121882707175180666atural @ one_one_Code_natural @ A ) )
        = ( divide5121882707175180666atural @ B @ A ) ) ) ).

% unit_mult_div_div
thf(fact_3546_pow__divides__pow__iff,axiom,
    ! [N: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( dvd_dvd_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) )
        = ( dvd_dvd_nat @ A @ B ) ) ) ).

% pow_divides_pow_iff
thf(fact_3547_pow__divides__pow__iff,axiom,
    ! [N: nat,A: int,B: int] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( dvd_dvd_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) )
        = ( dvd_dvd_int @ A @ B ) ) ) ).

% pow_divides_pow_iff
thf(fact_3548_sgn__mult__dvd__iff,axiom,
    ! [R: int,L: int,K: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ ( sgn_sgn_int @ R ) @ L ) @ K )
      = ( ( dvd_dvd_int @ L @ K )
        & ( ( R = zero_zero_int )
         => ( K = zero_zero_int ) ) ) ) ).

% sgn_mult_dvd_iff
thf(fact_3549_mult__sgn__dvd__iff,axiom,
    ! [L: int,R: int,K: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ L @ ( sgn_sgn_int @ R ) ) @ K )
      = ( ( dvd_dvd_int @ L @ K )
        & ( ( R = zero_zero_int )
         => ( K = zero_zero_int ) ) ) ) ).

% mult_sgn_dvd_iff
thf(fact_3550_dvd__sgn__mult__iff,axiom,
    ! [L: int,R: int,K: int] :
      ( ( dvd_dvd_int @ L @ ( times_times_int @ ( sgn_sgn_int @ R ) @ K ) )
      = ( ( dvd_dvd_int @ L @ K )
        | ( R = zero_zero_int ) ) ) ).

% dvd_sgn_mult_iff
thf(fact_3551_dvd__mult__sgn__iff,axiom,
    ! [L: int,K: int,R: int] :
      ( ( dvd_dvd_int @ L @ ( times_times_int @ K @ ( sgn_sgn_int @ R ) ) )
      = ( ( dvd_dvd_int @ L @ K )
        | ( R = zero_zero_int ) ) ) ).

% dvd_mult_sgn_iff
thf(fact_3552_normalize__denom__zero,axiom,
    ! [P4: int] :
      ( ( normalize @ ( product_Pair_int_int @ P4 @ zero_zero_int ) )
      = ( product_Pair_int_int @ zero_zero_int @ one_one_int ) ) ).

% normalize_denom_zero
thf(fact_3553_nat__abs__dvd__iff,axiom,
    ! [K: int,N: nat] :
      ( ( dvd_dvd_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ N )
      = ( dvd_dvd_int @ K @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% nat_abs_dvd_iff
thf(fact_3554_dvd__nat__abs__iff,axiom,
    ! [N: nat,K: int] :
      ( ( dvd_dvd_nat @ N @ ( nat2 @ ( abs_abs_int @ K ) ) )
      = ( dvd_dvd_int @ ( semiri1314217659103216013at_int @ N ) @ K ) ) ).

% dvd_nat_abs_iff
thf(fact_3555_strict__subset__divisors__dvd,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_set_int
        @ ( collect_int
          @ ^ [C3: int] : ( dvd_dvd_int @ C3 @ A ) )
        @ ( collect_int
          @ ^ [C3: int] : ( dvd_dvd_int @ C3 @ B ) ) )
      = ( ( dvd_dvd_int @ A @ B )
        & ~ ( dvd_dvd_int @ B @ A ) ) ) ).

% strict_subset_divisors_dvd
thf(fact_3556_strict__subset__divisors__dvd,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_set_nat
        @ ( collect_nat
          @ ^ [C3: nat] : ( dvd_dvd_nat @ C3 @ A ) )
        @ ( collect_nat
          @ ^ [C3: nat] : ( dvd_dvd_nat @ C3 @ B ) ) )
      = ( ( dvd_dvd_nat @ A @ B )
        & ~ ( dvd_dvd_nat @ B @ A ) ) ) ).

% strict_subset_divisors_dvd
thf(fact_3557_strict__subset__divisors__dvd,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le1307284697595431911nteger
        @ ( collect_Code_integer
          @ ^ [C3: code_integer] : ( dvd_dvd_Code_integer @ C3 @ A ) )
        @ ( collect_Code_integer
          @ ^ [C3: code_integer] : ( dvd_dvd_Code_integer @ C3 @ B ) ) )
      = ( ( dvd_dvd_Code_integer @ A @ B )
        & ~ ( dvd_dvd_Code_integer @ B @ A ) ) ) ).

% strict_subset_divisors_dvd
thf(fact_3558_gcd__nat_Onot__eq__order__implies__strict,axiom,
    ! [A: nat,B: nat] :
      ( ( A != B )
     => ( ( dvd_dvd_nat @ A @ B )
       => ( ( dvd_dvd_nat @ A @ B )
          & ( A != B ) ) ) ) ).

% gcd_nat.not_eq_order_implies_strict
thf(fact_3559_dvd__trans,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ B @ C )
       => ( dvd_dvd_int @ A @ C ) ) ) ).

% dvd_trans
thf(fact_3560_dvd__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ B @ C )
       => ( dvd_dvd_nat @ A @ C ) ) ) ).

% dvd_trans
thf(fact_3561_dvd__trans,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ B )
     => ( ( dvd_dvd_Code_integer @ B @ C )
       => ( dvd_dvd_Code_integer @ A @ C ) ) ) ).

% dvd_trans
thf(fact_3562_dvd__refl,axiom,
    ! [A: int] : ( dvd_dvd_int @ A @ A ) ).

% dvd_refl
thf(fact_3563_dvd__refl,axiom,
    ! [A: nat] : ( dvd_dvd_nat @ A @ A ) ).

% dvd_refl
thf(fact_3564_dvd__refl,axiom,
    ! [A: code_integer] : ( dvd_dvd_Code_integer @ A @ A ) ).

% dvd_refl
thf(fact_3565_gcd__nat_Ostrict__implies__not__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ( A != B ) ) ).

% gcd_nat.strict_implies_not_eq
thf(fact_3566_gcd__nat_Ostrict__implies__order,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ( dvd_dvd_nat @ A @ B ) ) ).

% gcd_nat.strict_implies_order
thf(fact_3567_gcd__nat_Ostrict__iff__order,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
      = ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) ) ) ).

% gcd_nat.strict_iff_order
thf(fact_3568_gcd__nat_Oorder__iff__strict,axiom,
    ( dvd_dvd_nat
    = ( ^ [A4: nat,B4: nat] :
          ( ( ( dvd_dvd_nat @ A4 @ B4 )
            & ( A4 != B4 ) )
          | ( A4 = B4 ) ) ) ) ).

% gcd_nat.order_iff_strict
thf(fact_3569_gcd__nat_Ostrict__iff__not,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
      = ( ( dvd_dvd_nat @ A @ B )
        & ~ ( dvd_dvd_nat @ B @ A ) ) ) ).

% gcd_nat.strict_iff_not
thf(fact_3570_gcd__nat_Ostrict__trans2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ( ( dvd_dvd_nat @ B @ C )
       => ( ( dvd_dvd_nat @ A @ C )
          & ( A != C ) ) ) ) ).

% gcd_nat.strict_trans2
thf(fact_3571_gcd__nat_Ostrict__trans1,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( ( dvd_dvd_nat @ B @ C )
          & ( B != C ) )
       => ( ( dvd_dvd_nat @ A @ C )
          & ( A != C ) ) ) ) ).

% gcd_nat.strict_trans1
thf(fact_3572_gcd__nat_Ostrict__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ( ( ( dvd_dvd_nat @ B @ C )
          & ( B != C ) )
       => ( ( dvd_dvd_nat @ A @ C )
          & ( A != C ) ) ) ) ).

% gcd_nat.strict_trans
thf(fact_3573_gcd__nat_Oantisym,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ B @ A )
       => ( A = B ) ) ) ).

% gcd_nat.antisym
thf(fact_3574_gcd__nat_Oirrefl,axiom,
    ! [A: nat] :
      ~ ( ( dvd_dvd_nat @ A @ A )
        & ( A != A ) ) ).

% gcd_nat.irrefl
thf(fact_3575_gcd__nat_Oeq__iff,axiom,
    ( ( ^ [Y5: nat,Z2: nat] : Y5 = Z2 )
    = ( ^ [A4: nat,B4: nat] :
          ( ( dvd_dvd_nat @ A4 @ B4 )
          & ( dvd_dvd_nat @ B4 @ A4 ) ) ) ) ).

% gcd_nat.eq_iff
thf(fact_3576_gcd__nat_Otrans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ B @ C )
       => ( dvd_dvd_nat @ A @ C ) ) ) ).

% gcd_nat.trans
thf(fact_3577_gcd__nat_Orefl,axiom,
    ! [A: nat] : ( dvd_dvd_nat @ A @ A ) ).

% gcd_nat.refl
thf(fact_3578_gcd__nat_Oasym,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ~ ( ( dvd_dvd_nat @ B @ A )
          & ( B != A ) ) ) ).

% gcd_nat.asym
thf(fact_3579_dvd__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ M @ N )
     => ( ( dvd_dvd_nat @ N @ M )
       => ( M = N ) ) ) ).

% dvd_antisym
thf(fact_3580_dvd__field__iff,axiom,
    ( dvd_dvd_rat
    = ( ^ [A4: rat,B4: rat] :
          ( ( A4 = zero_zero_rat )
         => ( B4 = zero_zero_rat ) ) ) ) ).

% dvd_field_iff
thf(fact_3581_dvd__0__left,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ zero_zero_nat @ A )
     => ( A = zero_zero_nat ) ) ).

% dvd_0_left
thf(fact_3582_dvd__0__left,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ zero_zero_int @ A )
     => ( A = zero_zero_int ) ) ).

% dvd_0_left
thf(fact_3583_dvd__0__left,axiom,
    ! [A: code_integer] :
      ( ( dvd_dvd_Code_integer @ zero_z3403309356797280102nteger @ A )
     => ( A = zero_z3403309356797280102nteger ) ) ).

% dvd_0_left
thf(fact_3584_dvd__0__left,axiom,
    ! [A: rat] :
      ( ( dvd_dvd_rat @ zero_zero_rat @ A )
     => ( A = zero_zero_rat ) ) ).

% dvd_0_left
thf(fact_3585_dvd__0__left,axiom,
    ! [A: code_natural] :
      ( ( dvd_dvd_Code_natural @ zero_z2226904508553997617atural @ A )
     => ( A = zero_z2226904508553997617atural ) ) ).

% dvd_0_left
thf(fact_3586_dvd__triv__right,axiom,
    ! [A: nat,B: nat] : ( dvd_dvd_nat @ A @ ( times_times_nat @ B @ A ) ) ).

% dvd_triv_right
thf(fact_3587_dvd__triv__right,axiom,
    ! [A: int,B: int] : ( dvd_dvd_int @ A @ ( times_times_int @ B @ A ) ) ).

% dvd_triv_right
thf(fact_3588_dvd__triv__right,axiom,
    ! [A: code_integer,B: code_integer] : ( dvd_dvd_Code_integer @ A @ ( times_3573771949741848930nteger @ B @ A ) ) ).

% dvd_triv_right
thf(fact_3589_dvd__triv__right,axiom,
    ! [A: rat,B: rat] : ( dvd_dvd_rat @ A @ ( times_times_rat @ B @ A ) ) ).

% dvd_triv_right
thf(fact_3590_dvd__mult__right,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ A @ B ) @ C )
     => ( dvd_dvd_nat @ B @ C ) ) ).

% dvd_mult_right
thf(fact_3591_dvd__mult__right,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ A @ B ) @ C )
     => ( dvd_dvd_int @ B @ C ) ) ).

% dvd_mult_right
thf(fact_3592_dvd__mult__right,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) @ C )
     => ( dvd_dvd_Code_integer @ B @ C ) ) ).

% dvd_mult_right
thf(fact_3593_dvd__mult__right,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( dvd_dvd_rat @ ( times_times_rat @ A @ B ) @ C )
     => ( dvd_dvd_rat @ B @ C ) ) ).

% dvd_mult_right
thf(fact_3594_mult__dvd__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ C @ D )
       => ( dvd_dvd_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ).

% mult_dvd_mono
thf(fact_3595_mult__dvd__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ C @ D )
       => ( dvd_dvd_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ).

% mult_dvd_mono
thf(fact_3596_mult__dvd__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ B )
     => ( ( dvd_dvd_Code_integer @ C @ D )
       => ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ).

% mult_dvd_mono
thf(fact_3597_mult__dvd__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( dvd_dvd_rat @ A @ B )
     => ( ( dvd_dvd_rat @ C @ D )
       => ( dvd_dvd_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ).

% mult_dvd_mono
thf(fact_3598_dvd__triv__left,axiom,
    ! [A: nat,B: nat] : ( dvd_dvd_nat @ A @ ( times_times_nat @ A @ B ) ) ).

% dvd_triv_left
thf(fact_3599_dvd__triv__left,axiom,
    ! [A: int,B: int] : ( dvd_dvd_int @ A @ ( times_times_int @ A @ B ) ) ).

% dvd_triv_left
thf(fact_3600_dvd__triv__left,axiom,
    ! [A: code_integer,B: code_integer] : ( dvd_dvd_Code_integer @ A @ ( times_3573771949741848930nteger @ A @ B ) ) ).

% dvd_triv_left
thf(fact_3601_dvd__triv__left,axiom,
    ! [A: rat,B: rat] : ( dvd_dvd_rat @ A @ ( times_times_rat @ A @ B ) ) ).

% dvd_triv_left
thf(fact_3602_dvd__mult__left,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ A @ B ) @ C )
     => ( dvd_dvd_nat @ A @ C ) ) ).

% dvd_mult_left
thf(fact_3603_dvd__mult__left,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ A @ B ) @ C )
     => ( dvd_dvd_int @ A @ C ) ) ).

% dvd_mult_left
thf(fact_3604_dvd__mult__left,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) @ C )
     => ( dvd_dvd_Code_integer @ A @ C ) ) ).

% dvd_mult_left
thf(fact_3605_dvd__mult__left,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( dvd_dvd_rat @ ( times_times_rat @ A @ B ) @ C )
     => ( dvd_dvd_rat @ A @ C ) ) ).

% dvd_mult_left
thf(fact_3606_dvd__mult2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( dvd_dvd_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

% dvd_mult2
thf(fact_3607_dvd__mult2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( dvd_dvd_int @ A @ ( times_times_int @ B @ C ) ) ) ).

% dvd_mult2
thf(fact_3608_dvd__mult2,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ B )
     => ( dvd_dvd_Code_integer @ A @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% dvd_mult2
thf(fact_3609_dvd__mult2,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( dvd_dvd_rat @ A @ B )
     => ( dvd_dvd_rat @ A @ ( times_times_rat @ B @ C ) ) ) ).

% dvd_mult2
thf(fact_3610_division__decomp,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ ( times_times_nat @ B @ C ) )
     => ? [B7: nat,C4: nat] :
          ( ( A
            = ( times_times_nat @ B7 @ C4 ) )
          & ( dvd_dvd_nat @ B7 @ B )
          & ( dvd_dvd_nat @ C4 @ C ) ) ) ).

% division_decomp
thf(fact_3611_division__decomp,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ ( times_times_int @ B @ C ) )
     => ? [B7: int,C4: int] :
          ( ( A
            = ( times_times_int @ B7 @ C4 ) )
          & ( dvd_dvd_int @ B7 @ B )
          & ( dvd_dvd_int @ C4 @ C ) ) ) ).

% division_decomp
thf(fact_3612_dvd__mult,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ C )
     => ( dvd_dvd_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

% dvd_mult
thf(fact_3613_dvd__mult,axiom,
    ! [A: int,C: int,B: int] :
      ( ( dvd_dvd_int @ A @ C )
     => ( dvd_dvd_int @ A @ ( times_times_int @ B @ C ) ) ) ).

% dvd_mult
thf(fact_3614_dvd__mult,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ C )
     => ( dvd_dvd_Code_integer @ A @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% dvd_mult
thf(fact_3615_dvd__mult,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( dvd_dvd_rat @ A @ C )
     => ( dvd_dvd_rat @ A @ ( times_times_rat @ B @ C ) ) ) ).

% dvd_mult
thf(fact_3616_dvd__productE,axiom,
    ! [P4: nat,A: nat,B: nat] :
      ( ( dvd_dvd_nat @ P4 @ ( times_times_nat @ A @ B ) )
     => ~ ! [X5: nat,Y4: nat] :
            ( ( P4
              = ( times_times_nat @ X5 @ Y4 ) )
           => ( ( dvd_dvd_nat @ X5 @ A )
             => ~ ( dvd_dvd_nat @ Y4 @ B ) ) ) ) ).

% dvd_productE
thf(fact_3617_dvd__productE,axiom,
    ! [P4: int,A: int,B: int] :
      ( ( dvd_dvd_int @ P4 @ ( times_times_int @ A @ B ) )
     => ~ ! [X5: int,Y4: int] :
            ( ( P4
              = ( times_times_int @ X5 @ Y4 ) )
           => ( ( dvd_dvd_int @ X5 @ A )
             => ~ ( dvd_dvd_int @ Y4 @ B ) ) ) ) ).

% dvd_productE
thf(fact_3618_dvd__def,axiom,
    ( dvd_dvd_nat
    = ( ^ [B4: nat,A4: nat] :
        ? [K3: nat] :
          ( A4
          = ( times_times_nat @ B4 @ K3 ) ) ) ) ).

% dvd_def
thf(fact_3619_dvd__def,axiom,
    ( dvd_dvd_int
    = ( ^ [B4: int,A4: int] :
        ? [K3: int] :
          ( A4
          = ( times_times_int @ B4 @ K3 ) ) ) ) ).

% dvd_def
thf(fact_3620_dvd__def,axiom,
    ( dvd_dvd_Code_integer
    = ( ^ [B4: code_integer,A4: code_integer] :
        ? [K3: code_integer] :
          ( A4
          = ( times_3573771949741848930nteger @ B4 @ K3 ) ) ) ) ).

% dvd_def
thf(fact_3621_dvd__def,axiom,
    ( dvd_dvd_rat
    = ( ^ [B4: rat,A4: rat] :
        ? [K3: rat] :
          ( A4
          = ( times_times_rat @ B4 @ K3 ) ) ) ) ).

% dvd_def
thf(fact_3622_dvdI,axiom,
    ! [A: nat,B: nat,K: nat] :
      ( ( A
        = ( times_times_nat @ B @ K ) )
     => ( dvd_dvd_nat @ B @ A ) ) ).

% dvdI
thf(fact_3623_dvdI,axiom,
    ! [A: int,B: int,K: int] :
      ( ( A
        = ( times_times_int @ B @ K ) )
     => ( dvd_dvd_int @ B @ A ) ) ).

% dvdI
thf(fact_3624_dvdI,axiom,
    ! [A: code_integer,B: code_integer,K: code_integer] :
      ( ( A
        = ( times_3573771949741848930nteger @ B @ K ) )
     => ( dvd_dvd_Code_integer @ B @ A ) ) ).

% dvdI
thf(fact_3625_dvdI,axiom,
    ! [A: rat,B: rat,K: rat] :
      ( ( A
        = ( times_times_rat @ B @ K ) )
     => ( dvd_dvd_rat @ B @ A ) ) ).

% dvdI
thf(fact_3626_dvdE,axiom,
    ! [B: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ A )
     => ~ ! [K2: nat] :
            ( A
           != ( times_times_nat @ B @ K2 ) ) ) ).

% dvdE
thf(fact_3627_dvdE,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ A )
     => ~ ! [K2: int] :
            ( A
           != ( times_times_int @ B @ K2 ) ) ) ).

% dvdE
thf(fact_3628_dvdE,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ A )
     => ~ ! [K2: code_integer] :
            ( A
           != ( times_3573771949741848930nteger @ B @ K2 ) ) ) ).

% dvdE
thf(fact_3629_dvdE,axiom,
    ! [B: rat,A: rat] :
      ( ( dvd_dvd_rat @ B @ A )
     => ~ ! [K2: rat] :
            ( A
           != ( times_times_rat @ B @ K2 ) ) ) ).

% dvdE
thf(fact_3630_dvd__add,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ B )
     => ( ( dvd_dvd_Code_integer @ A @ C )
       => ( dvd_dvd_Code_integer @ A @ ( plus_p5714425477246183910nteger @ B @ C ) ) ) ) ).

% dvd_add
thf(fact_3631_dvd__add,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( dvd_dvd_rat @ A @ B )
     => ( ( dvd_dvd_rat @ A @ C )
       => ( dvd_dvd_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ) ).

% dvd_add
thf(fact_3632_dvd__add,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ A @ C )
       => ( dvd_dvd_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ) ).

% dvd_add
thf(fact_3633_dvd__add,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ A @ C )
       => ( dvd_dvd_int @ A @ ( plus_plus_int @ B @ C ) ) ) ) ).

% dvd_add
thf(fact_3634_dvd__add__left__iff,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ C )
     => ( ( dvd_dvd_Code_integer @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
        = ( dvd_dvd_Code_integer @ A @ B ) ) ) ).

% dvd_add_left_iff
thf(fact_3635_dvd__add__left__iff,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( dvd_dvd_rat @ A @ C )
     => ( ( dvd_dvd_rat @ A @ ( plus_plus_rat @ B @ C ) )
        = ( dvd_dvd_rat @ A @ B ) ) ) ).

% dvd_add_left_iff
thf(fact_3636_dvd__add__left__iff,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ C )
     => ( ( dvd_dvd_nat @ A @ ( plus_plus_nat @ B @ C ) )
        = ( dvd_dvd_nat @ A @ B ) ) ) ).

% dvd_add_left_iff
thf(fact_3637_dvd__add__left__iff,axiom,
    ! [A: int,C: int,B: int] :
      ( ( dvd_dvd_int @ A @ C )
     => ( ( dvd_dvd_int @ A @ ( plus_plus_int @ B @ C ) )
        = ( dvd_dvd_int @ A @ B ) ) ) ).

% dvd_add_left_iff
thf(fact_3638_dvd__add__right__iff,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ B )
     => ( ( dvd_dvd_Code_integer @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
        = ( dvd_dvd_Code_integer @ A @ C ) ) ) ).

% dvd_add_right_iff
thf(fact_3639_dvd__add__right__iff,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( dvd_dvd_rat @ A @ B )
     => ( ( dvd_dvd_rat @ A @ ( plus_plus_rat @ B @ C ) )
        = ( dvd_dvd_rat @ A @ C ) ) ) ).

% dvd_add_right_iff
thf(fact_3640_dvd__add__right__iff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ A @ ( plus_plus_nat @ B @ C ) )
        = ( dvd_dvd_nat @ A @ C ) ) ) ).

% dvd_add_right_iff
thf(fact_3641_dvd__add__right__iff,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ A @ ( plus_plus_int @ B @ C ) )
        = ( dvd_dvd_int @ A @ C ) ) ) ).

% dvd_add_right_iff
thf(fact_3642_one__dvd,axiom,
    ! [A: nat] : ( dvd_dvd_nat @ one_one_nat @ A ) ).

% one_dvd
thf(fact_3643_one__dvd,axiom,
    ! [A: int] : ( dvd_dvd_int @ one_one_int @ A ) ).

% one_dvd
thf(fact_3644_one__dvd,axiom,
    ! [A: code_integer] : ( dvd_dvd_Code_integer @ one_one_Code_integer @ A ) ).

% one_dvd
thf(fact_3645_one__dvd,axiom,
    ! [A: rat] : ( dvd_dvd_rat @ one_one_rat @ A ) ).

% one_dvd
thf(fact_3646_one__dvd,axiom,
    ! [A: code_natural] : ( dvd_dvd_Code_natural @ one_one_Code_natural @ A ) ).

% one_dvd
thf(fact_3647_unit__imp__dvd,axiom,
    ! [B: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( dvd_dvd_nat @ B @ A ) ) ).

% unit_imp_dvd
thf(fact_3648_unit__imp__dvd,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( dvd_dvd_int @ B @ A ) ) ).

% unit_imp_dvd
thf(fact_3649_unit__imp__dvd,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( dvd_dvd_Code_integer @ B @ A ) ) ).

% unit_imp_dvd
thf(fact_3650_unit__imp__dvd,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( dvd_dvd_Code_natural @ B @ A ) ) ).

% unit_imp_dvd
thf(fact_3651_dvd__unit__imp__unit,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ B @ one_one_nat )
       => ( dvd_dvd_nat @ A @ one_one_nat ) ) ) ).

% dvd_unit_imp_unit
thf(fact_3652_dvd__unit__imp__unit,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ B @ one_one_int )
       => ( dvd_dvd_int @ A @ one_one_int ) ) ) ).

% dvd_unit_imp_unit
thf(fact_3653_dvd__unit__imp__unit,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ B )
     => ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
       => ( dvd_dvd_Code_integer @ A @ one_one_Code_integer ) ) ) ).

% dvd_unit_imp_unit
thf(fact_3654_dvd__unit__imp__unit,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ B )
     => ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
       => ( dvd_dvd_Code_natural @ A @ one_one_Code_natural ) ) ) ).

% dvd_unit_imp_unit
thf(fact_3655_dvd__diff,axiom,
    ! [X: int,Y3: int,Z: int] :
      ( ( dvd_dvd_int @ X @ Y3 )
     => ( ( dvd_dvd_int @ X @ Z )
       => ( dvd_dvd_int @ X @ ( minus_minus_int @ Y3 @ Z ) ) ) ) ).

% dvd_diff
thf(fact_3656_dvd__diff,axiom,
    ! [X: code_integer,Y3: code_integer,Z: code_integer] :
      ( ( dvd_dvd_Code_integer @ X @ Y3 )
     => ( ( dvd_dvd_Code_integer @ X @ Z )
       => ( dvd_dvd_Code_integer @ X @ ( minus_8373710615458151222nteger @ Y3 @ Z ) ) ) ) ).

% dvd_diff
thf(fact_3657_dvd__diff,axiom,
    ! [X: rat,Y3: rat,Z: rat] :
      ( ( dvd_dvd_rat @ X @ Y3 )
     => ( ( dvd_dvd_rat @ X @ Z )
       => ( dvd_dvd_rat @ X @ ( minus_minus_rat @ Y3 @ Z ) ) ) ) ).

% dvd_diff
thf(fact_3658_div__div__div__same,axiom,
    ! [D: int,B: int,A: int] :
      ( ( dvd_dvd_int @ D @ B )
     => ( ( dvd_dvd_int @ B @ A )
       => ( ( divide_divide_int @ ( divide_divide_int @ A @ D ) @ ( divide_divide_int @ B @ D ) )
          = ( divide_divide_int @ A @ B ) ) ) ) ).

% div_div_div_same
thf(fact_3659_div__div__div__same,axiom,
    ! [D: nat,B: nat,A: nat] :
      ( ( dvd_dvd_nat @ D @ B )
     => ( ( dvd_dvd_nat @ B @ A )
       => ( ( divide_divide_nat @ ( divide_divide_nat @ A @ D ) @ ( divide_divide_nat @ B @ D ) )
          = ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_div_div_same
thf(fact_3660_div__div__div__same,axiom,
    ! [D: code_integer,B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ D @ B )
     => ( ( dvd_dvd_Code_integer @ B @ A )
       => ( ( divide6298287555418463151nteger @ ( divide6298287555418463151nteger @ A @ D ) @ ( divide6298287555418463151nteger @ B @ D ) )
          = ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_div_div_same
thf(fact_3661_div__div__div__same,axiom,
    ! [D: code_natural,B: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ D @ B )
     => ( ( dvd_dvd_Code_natural @ B @ A )
       => ( ( divide5121882707175180666atural @ ( divide5121882707175180666atural @ A @ D ) @ ( divide5121882707175180666atural @ B @ D ) )
          = ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_div_div_same
thf(fact_3662_dvd__div__eq__cancel,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ( divide_divide_int @ A @ C )
        = ( divide_divide_int @ B @ C ) )
     => ( ( dvd_dvd_int @ C @ A )
       => ( ( dvd_dvd_int @ C @ B )
         => ( A = B ) ) ) ) ).

% dvd_div_eq_cancel
thf(fact_3663_dvd__div__eq__cancel,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ( divide_divide_nat @ A @ C )
        = ( divide_divide_nat @ B @ C ) )
     => ( ( dvd_dvd_nat @ C @ A )
       => ( ( dvd_dvd_nat @ C @ B )
         => ( A = B ) ) ) ) ).

% dvd_div_eq_cancel
thf(fact_3664_dvd__div__eq__cancel,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ( divide6298287555418463151nteger @ A @ C )
        = ( divide6298287555418463151nteger @ B @ C ) )
     => ( ( dvd_dvd_Code_integer @ C @ A )
       => ( ( dvd_dvd_Code_integer @ C @ B )
         => ( A = B ) ) ) ) ).

% dvd_div_eq_cancel
thf(fact_3665_dvd__div__eq__cancel,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ( divide_divide_rat @ A @ C )
        = ( divide_divide_rat @ B @ C ) )
     => ( ( dvd_dvd_rat @ C @ A )
       => ( ( dvd_dvd_rat @ C @ B )
         => ( A = B ) ) ) ) ).

% dvd_div_eq_cancel
thf(fact_3666_dvd__div__eq__cancel,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( ( divide5121882707175180666atural @ A @ C )
        = ( divide5121882707175180666atural @ B @ C ) )
     => ( ( dvd_dvd_Code_natural @ C @ A )
       => ( ( dvd_dvd_Code_natural @ C @ B )
         => ( A = B ) ) ) ) ).

% dvd_div_eq_cancel
thf(fact_3667_dvd__div__eq__iff,axiom,
    ! [C: int,A: int,B: int] :
      ( ( dvd_dvd_int @ C @ A )
     => ( ( dvd_dvd_int @ C @ B )
       => ( ( ( divide_divide_int @ A @ C )
            = ( divide_divide_int @ B @ C ) )
          = ( A = B ) ) ) ) ).

% dvd_div_eq_iff
thf(fact_3668_dvd__div__eq__iff,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( dvd_dvd_nat @ C @ A )
     => ( ( dvd_dvd_nat @ C @ B )
       => ( ( ( divide_divide_nat @ A @ C )
            = ( divide_divide_nat @ B @ C ) )
          = ( A = B ) ) ) ) ).

% dvd_div_eq_iff
thf(fact_3669_dvd__div__eq__iff,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ A )
     => ( ( dvd_dvd_Code_integer @ C @ B )
       => ( ( ( divide6298287555418463151nteger @ A @ C )
            = ( divide6298287555418463151nteger @ B @ C ) )
          = ( A = B ) ) ) ) ).

% dvd_div_eq_iff
thf(fact_3670_dvd__div__eq__iff,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( dvd_dvd_rat @ C @ A )
     => ( ( dvd_dvd_rat @ C @ B )
       => ( ( ( divide_divide_rat @ A @ C )
            = ( divide_divide_rat @ B @ C ) )
          = ( A = B ) ) ) ) ).

% dvd_div_eq_iff
thf(fact_3671_dvd__div__eq__iff,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ C @ A )
     => ( ( dvd_dvd_Code_natural @ C @ B )
       => ( ( ( divide5121882707175180666atural @ A @ C )
            = ( divide5121882707175180666atural @ B @ C ) )
          = ( A = B ) ) ) ) ).

% dvd_div_eq_iff
thf(fact_3672_gcd__nat_Oextremum,axiom,
    ! [A: nat] : ( dvd_dvd_nat @ A @ zero_zero_nat ) ).

% gcd_nat.extremum
thf(fact_3673_gcd__nat_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ( dvd_dvd_nat @ zero_zero_nat @ A )
        & ( zero_zero_nat != A ) ) ).

% gcd_nat.extremum_strict
thf(fact_3674_gcd__nat_Oextremum__unique,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ zero_zero_nat @ A )
      = ( A = zero_zero_nat ) ) ).

% gcd_nat.extremum_unique
thf(fact_3675_gcd__nat_Onot__eq__extremum,axiom,
    ! [A: nat] :
      ( ( A != zero_zero_nat )
      = ( ( dvd_dvd_nat @ A @ zero_zero_nat )
        & ( A != zero_zero_nat ) ) ) ).

% gcd_nat.not_eq_extremum
thf(fact_3676_gcd__nat_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ zero_zero_nat @ A )
     => ( A = zero_zero_nat ) ) ).

% gcd_nat.extremum_uniqueI
thf(fact_3677_dvd__if__abs__eq,axiom,
    ! [L: int,K: int] :
      ( ( ( abs_abs_int @ L )
        = ( abs_abs_int @ K ) )
     => ( dvd_dvd_int @ L @ K ) ) ).

% dvd_if_abs_eq
thf(fact_3678_dvd__if__abs__eq,axiom,
    ! [L: code_integer,K: code_integer] :
      ( ( ( abs_abs_Code_integer @ L )
        = ( abs_abs_Code_integer @ K ) )
     => ( dvd_dvd_Code_integer @ L @ K ) ) ).

% dvd_if_abs_eq
thf(fact_3679_dvd__if__abs__eq,axiom,
    ! [L: rat,K: rat] :
      ( ( ( abs_abs_rat @ L )
        = ( abs_abs_rat @ K ) )
     => ( dvd_dvd_rat @ L @ K ) ) ).

% dvd_if_abs_eq
thf(fact_3680_dvd__diff__nat,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ M )
     => ( ( dvd_dvd_nat @ K @ N )
       => ( dvd_dvd_nat @ K @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% dvd_diff_nat
thf(fact_3681_zdvd__zdiffD,axiom,
    ! [K: int,M: int,N: int] :
      ( ( dvd_dvd_int @ K @ ( minus_minus_int @ M @ N ) )
     => ( ( dvd_dvd_int @ K @ N )
       => ( dvd_dvd_int @ K @ M ) ) ) ).

% zdvd_zdiffD
thf(fact_3682_zdvd__antisym__abs,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ B @ A )
       => ( ( abs_abs_int @ A )
          = ( abs_abs_int @ B ) ) ) ) ).

% zdvd_antisym_abs
thf(fact_3683_subset__divisors__dvd,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_set_int
        @ ( collect_int
          @ ^ [C3: int] : ( dvd_dvd_int @ C3 @ A ) )
        @ ( collect_int
          @ ^ [C3: int] : ( dvd_dvd_int @ C3 @ B ) ) )
      = ( dvd_dvd_int @ A @ B ) ) ).

% subset_divisors_dvd
thf(fact_3684_subset__divisors__dvd,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le7084787975880047091nteger
        @ ( collect_Code_integer
          @ ^ [C3: code_integer] : ( dvd_dvd_Code_integer @ C3 @ A ) )
        @ ( collect_Code_integer
          @ ^ [C3: code_integer] : ( dvd_dvd_Code_integer @ C3 @ B ) ) )
      = ( dvd_dvd_Code_integer @ A @ B ) ) ).

% subset_divisors_dvd
thf(fact_3685_subset__divisors__dvd,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_set_nat
        @ ( collect_nat
          @ ^ [C3: nat] : ( dvd_dvd_nat @ C3 @ A ) )
        @ ( collect_nat
          @ ^ [C3: nat] : ( dvd_dvd_nat @ C3 @ B ) ) )
      = ( dvd_dvd_nat @ A @ B ) ) ).

% subset_divisors_dvd
thf(fact_3686_gbinomial__Suc__Suc,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( suc @ K ) )
      = ( plus_plus_rat @ ( gbinomial_rat @ A @ K ) @ ( gbinomial_rat @ A @ ( suc @ K ) ) ) ) ).

% gbinomial_Suc_Suc
thf(fact_3687_not__is__unit__0,axiom,
    ~ ( dvd_dvd_nat @ zero_zero_nat @ one_one_nat ) ).

% not_is_unit_0
thf(fact_3688_not__is__unit__0,axiom,
    ~ ( dvd_dvd_int @ zero_zero_int @ one_one_int ) ).

% not_is_unit_0
thf(fact_3689_not__is__unit__0,axiom,
    ~ ( dvd_dvd_Code_integer @ zero_z3403309356797280102nteger @ one_one_Code_integer ) ).

% not_is_unit_0
thf(fact_3690_not__is__unit__0,axiom,
    ~ ( dvd_dvd_Code_natural @ zero_z2226904508553997617atural @ one_one_Code_natural ) ).

% not_is_unit_0
thf(fact_3691_unit__mult__right__cancel,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ( ( ( times_2397367101498566445atural @ B @ A )
          = ( times_2397367101498566445atural @ C @ A ) )
        = ( B = C ) ) ) ).

% unit_mult_right_cancel
thf(fact_3692_unit__mult__right__cancel,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( ( times_times_nat @ B @ A )
          = ( times_times_nat @ C @ A ) )
        = ( B = C ) ) ) ).

% unit_mult_right_cancel
thf(fact_3693_unit__mult__right__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( ( times_times_int @ B @ A )
          = ( times_times_int @ C @ A ) )
        = ( B = C ) ) ) ).

% unit_mult_right_cancel
thf(fact_3694_unit__mult__right__cancel,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ( ( ( times_3573771949741848930nteger @ B @ A )
          = ( times_3573771949741848930nteger @ C @ A ) )
        = ( B = C ) ) ) ).

% unit_mult_right_cancel
thf(fact_3695_unit__mult__left__cancel,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ( ( ( times_2397367101498566445atural @ A @ B )
          = ( times_2397367101498566445atural @ A @ C ) )
        = ( B = C ) ) ) ).

% unit_mult_left_cancel
thf(fact_3696_unit__mult__left__cancel,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( ( times_times_nat @ A @ B )
          = ( times_times_nat @ A @ C ) )
        = ( B = C ) ) ) ).

% unit_mult_left_cancel
thf(fact_3697_unit__mult__left__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( ( times_times_int @ A @ B )
          = ( times_times_int @ A @ C ) )
        = ( B = C ) ) ) ).

% unit_mult_left_cancel
thf(fact_3698_unit__mult__left__cancel,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ( ( ( times_3573771949741848930nteger @ A @ B )
          = ( times_3573771949741848930nteger @ A @ C ) )
        = ( B = C ) ) ) ).

% unit_mult_left_cancel
thf(fact_3699_mult__unit__dvd__iff_H,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ( ( dvd_dvd_Code_natural @ ( times_2397367101498566445atural @ A @ B ) @ C )
        = ( dvd_dvd_Code_natural @ B @ C ) ) ) ).

% mult_unit_dvd_iff'
thf(fact_3700_mult__unit__dvd__iff_H,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ A @ B ) @ C )
        = ( dvd_dvd_nat @ B @ C ) ) ) ).

% mult_unit_dvd_iff'
thf(fact_3701_mult__unit__dvd__iff_H,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( dvd_dvd_int @ ( times_times_int @ A @ B ) @ C )
        = ( dvd_dvd_int @ B @ C ) ) ) ).

% mult_unit_dvd_iff'
thf(fact_3702_mult__unit__dvd__iff_H,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) @ C )
        = ( dvd_dvd_Code_integer @ B @ C ) ) ) ).

% mult_unit_dvd_iff'
thf(fact_3703_dvd__mult__unit__iff_H,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( dvd_dvd_Code_natural @ A @ ( times_2397367101498566445atural @ B @ C ) )
        = ( dvd_dvd_Code_natural @ A @ C ) ) ) ).

% dvd_mult_unit_iff'
thf(fact_3704_dvd__mult__unit__iff_H,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( dvd_dvd_nat @ A @ ( times_times_nat @ B @ C ) )
        = ( dvd_dvd_nat @ A @ C ) ) ) ).

% dvd_mult_unit_iff'
thf(fact_3705_dvd__mult__unit__iff_H,axiom,
    ! [B: int,A: int,C: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( dvd_dvd_int @ A @ ( times_times_int @ B @ C ) )
        = ( dvd_dvd_int @ A @ C ) ) ) ).

% dvd_mult_unit_iff'
thf(fact_3706_dvd__mult__unit__iff_H,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( dvd_dvd_Code_integer @ A @ ( times_3573771949741848930nteger @ B @ C ) )
        = ( dvd_dvd_Code_integer @ A @ C ) ) ) ).

% dvd_mult_unit_iff'
thf(fact_3707_mult__unit__dvd__iff,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( dvd_dvd_Code_natural @ ( times_2397367101498566445atural @ A @ B ) @ C )
        = ( dvd_dvd_Code_natural @ A @ C ) ) ) ).

% mult_unit_dvd_iff
thf(fact_3708_mult__unit__dvd__iff,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ A @ B ) @ C )
        = ( dvd_dvd_nat @ A @ C ) ) ) ).

% mult_unit_dvd_iff
thf(fact_3709_mult__unit__dvd__iff,axiom,
    ! [B: int,A: int,C: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( dvd_dvd_int @ ( times_times_int @ A @ B ) @ C )
        = ( dvd_dvd_int @ A @ C ) ) ) ).

% mult_unit_dvd_iff
thf(fact_3710_mult__unit__dvd__iff,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) @ C )
        = ( dvd_dvd_Code_integer @ A @ C ) ) ) ).

% mult_unit_dvd_iff
thf(fact_3711_dvd__mult__unit__iff,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( dvd_dvd_Code_natural @ A @ ( times_2397367101498566445atural @ C @ B ) )
        = ( dvd_dvd_Code_natural @ A @ C ) ) ) ).

% dvd_mult_unit_iff
thf(fact_3712_dvd__mult__unit__iff,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( dvd_dvd_nat @ A @ ( times_times_nat @ C @ B ) )
        = ( dvd_dvd_nat @ A @ C ) ) ) ).

% dvd_mult_unit_iff
thf(fact_3713_dvd__mult__unit__iff,axiom,
    ! [B: int,A: int,C: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( dvd_dvd_int @ A @ ( times_times_int @ C @ B ) )
        = ( dvd_dvd_int @ A @ C ) ) ) ).

% dvd_mult_unit_iff
thf(fact_3714_dvd__mult__unit__iff,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( dvd_dvd_Code_integer @ A @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( dvd_dvd_Code_integer @ A @ C ) ) ) ).

% dvd_mult_unit_iff
thf(fact_3715_is__unit__mult__iff,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ ( times_2397367101498566445atural @ A @ B ) @ one_one_Code_natural )
      = ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
        & ( dvd_dvd_Code_natural @ B @ one_one_Code_natural ) ) ) ).

% is_unit_mult_iff
thf(fact_3716_is__unit__mult__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ A @ B ) @ one_one_nat )
      = ( ( dvd_dvd_nat @ A @ one_one_nat )
        & ( dvd_dvd_nat @ B @ one_one_nat ) ) ) ).

% is_unit_mult_iff
thf(fact_3717_is__unit__mult__iff,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ A @ B ) @ one_one_int )
      = ( ( dvd_dvd_int @ A @ one_one_int )
        & ( dvd_dvd_int @ B @ one_one_int ) ) ) ).

% is_unit_mult_iff
thf(fact_3718_is__unit__mult__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) @ one_one_Code_integer )
      = ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
        & ( dvd_dvd_Code_integer @ B @ one_one_Code_integer ) ) ) ).

% is_unit_mult_iff
thf(fact_3719_dvd__div__eq__0__iff,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ A )
     => ( ( ( divide_divide_int @ A @ B )
          = zero_zero_int )
        = ( A = zero_zero_int ) ) ) ).

% dvd_div_eq_0_iff
thf(fact_3720_dvd__div__eq__0__iff,axiom,
    ! [B: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ A )
     => ( ( ( divide_divide_nat @ A @ B )
          = zero_zero_nat )
        = ( A = zero_zero_nat ) ) ) ).

% dvd_div_eq_0_iff
thf(fact_3721_dvd__div__eq__0__iff,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ A )
     => ( ( ( divide6298287555418463151nteger @ A @ B )
          = zero_z3403309356797280102nteger )
        = ( A = zero_z3403309356797280102nteger ) ) ) ).

% dvd_div_eq_0_iff
thf(fact_3722_dvd__div__eq__0__iff,axiom,
    ! [B: rat,A: rat] :
      ( ( dvd_dvd_rat @ B @ A )
     => ( ( ( divide_divide_rat @ A @ B )
          = zero_zero_rat )
        = ( A = zero_zero_rat ) ) ) ).

% dvd_div_eq_0_iff
thf(fact_3723_dvd__div__eq__0__iff,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ A )
     => ( ( ( divide5121882707175180666atural @ A @ B )
          = zero_z2226904508553997617atural )
        = ( A = zero_z2226904508553997617atural ) ) ) ).

% dvd_div_eq_0_iff
thf(fact_3724_div__mult__div__if__dvd,axiom,
    ! [B: int,A: int,D: int,C: int] :
      ( ( dvd_dvd_int @ B @ A )
     => ( ( dvd_dvd_int @ D @ C )
       => ( ( times_times_int @ ( divide_divide_int @ A @ B ) @ ( divide_divide_int @ C @ D ) )
          = ( divide_divide_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ).

% div_mult_div_if_dvd
thf(fact_3725_div__mult__div__if__dvd,axiom,
    ! [B: nat,A: nat,D: nat,C: nat] :
      ( ( dvd_dvd_nat @ B @ A )
     => ( ( dvd_dvd_nat @ D @ C )
       => ( ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ ( divide_divide_nat @ C @ D ) )
          = ( divide_divide_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ).

% div_mult_div_if_dvd
thf(fact_3726_div__mult__div__if__dvd,axiom,
    ! [B: code_integer,A: code_integer,D: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ A )
     => ( ( dvd_dvd_Code_integer @ D @ C )
       => ( ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ ( divide6298287555418463151nteger @ C @ D ) )
          = ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ).

% div_mult_div_if_dvd
thf(fact_3727_div__mult__div__if__dvd,axiom,
    ! [B: code_natural,A: code_natural,D: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ A )
     => ( ( dvd_dvd_Code_natural @ D @ C )
       => ( ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ ( divide5121882707175180666atural @ C @ D ) )
          = ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ).

% div_mult_div_if_dvd
thf(fact_3728_dvd__mult__imp__div,axiom,
    ! [A: int,C: int,B: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ A @ C ) @ B )
     => ( dvd_dvd_int @ A @ ( divide_divide_int @ B @ C ) ) ) ).

% dvd_mult_imp_div
thf(fact_3729_dvd__mult__imp__div,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ A @ C ) @ B )
     => ( dvd_dvd_nat @ A @ ( divide_divide_nat @ B @ C ) ) ) ).

% dvd_mult_imp_div
thf(fact_3730_dvd__mult__imp__div,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ C ) @ B )
     => ( dvd_dvd_Code_integer @ A @ ( divide6298287555418463151nteger @ B @ C ) ) ) ).

% dvd_mult_imp_div
thf(fact_3731_dvd__mult__imp__div,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ ( times_2397367101498566445atural @ A @ C ) @ B )
     => ( dvd_dvd_Code_natural @ A @ ( divide5121882707175180666atural @ B @ C ) ) ) ).

% dvd_mult_imp_div
thf(fact_3732_dvd__div__mult2__eq,axiom,
    ! [B: int,C: int,A: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ B @ C ) @ A )
     => ( ( divide_divide_int @ A @ ( times_times_int @ B @ C ) )
        = ( divide_divide_int @ ( divide_divide_int @ A @ B ) @ C ) ) ) ).

% dvd_div_mult2_eq
thf(fact_3733_dvd__div__mult2__eq,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ B @ C ) @ A )
     => ( ( divide_divide_nat @ A @ ( times_times_nat @ B @ C ) )
        = ( divide_divide_nat @ ( divide_divide_nat @ A @ B ) @ C ) ) ) ).

% dvd_div_mult2_eq
thf(fact_3734_dvd__div__mult2__eq,axiom,
    ! [B: code_integer,C: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ B @ C ) @ A )
     => ( ( divide6298287555418463151nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) )
        = ( divide6298287555418463151nteger @ ( divide6298287555418463151nteger @ A @ B ) @ C ) ) ) ).

% dvd_div_mult2_eq
thf(fact_3735_dvd__div__mult2__eq,axiom,
    ! [B: code_natural,C: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ ( times_2397367101498566445atural @ B @ C ) @ A )
     => ( ( divide5121882707175180666atural @ A @ ( times_2397367101498566445atural @ B @ C ) )
        = ( divide5121882707175180666atural @ ( divide5121882707175180666atural @ A @ B ) @ C ) ) ) ).

% dvd_div_mult2_eq
thf(fact_3736_div__div__eq__right,axiom,
    ! [C: int,B: int,A: int] :
      ( ( dvd_dvd_int @ C @ B )
     => ( ( dvd_dvd_int @ B @ A )
       => ( ( divide_divide_int @ A @ ( divide_divide_int @ B @ C ) )
          = ( times_times_int @ ( divide_divide_int @ A @ B ) @ C ) ) ) ) ).

% div_div_eq_right
thf(fact_3737_div__div__eq__right,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( dvd_dvd_nat @ C @ B )
     => ( ( dvd_dvd_nat @ B @ A )
       => ( ( divide_divide_nat @ A @ ( divide_divide_nat @ B @ C ) )
          = ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ C ) ) ) ) ).

% div_div_eq_right
thf(fact_3738_div__div__eq__right,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ B )
     => ( ( dvd_dvd_Code_integer @ B @ A )
       => ( ( divide6298287555418463151nteger @ A @ ( divide6298287555418463151nteger @ B @ C ) )
          = ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ C ) ) ) ) ).

% div_div_eq_right
thf(fact_3739_div__div__eq__right,axiom,
    ! [C: code_natural,B: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ C @ B )
     => ( ( dvd_dvd_Code_natural @ B @ A )
       => ( ( divide5121882707175180666atural @ A @ ( divide5121882707175180666atural @ B @ C ) )
          = ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ C ) ) ) ) ).

% div_div_eq_right
thf(fact_3740_div__mult__swap,axiom,
    ! [C: int,B: int,A: int] :
      ( ( dvd_dvd_int @ C @ B )
     => ( ( times_times_int @ A @ ( divide_divide_int @ B @ C ) )
        = ( divide_divide_int @ ( times_times_int @ A @ B ) @ C ) ) ) ).

% div_mult_swap
thf(fact_3741_div__mult__swap,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( dvd_dvd_nat @ C @ B )
     => ( ( times_times_nat @ A @ ( divide_divide_nat @ B @ C ) )
        = ( divide_divide_nat @ ( times_times_nat @ A @ B ) @ C ) ) ) ).

% div_mult_swap
thf(fact_3742_div__mult__swap,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ B )
     => ( ( times_3573771949741848930nteger @ A @ ( divide6298287555418463151nteger @ B @ C ) )
        = ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ B ) @ C ) ) ) ).

% div_mult_swap
thf(fact_3743_div__mult__swap,axiom,
    ! [C: code_natural,B: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ C @ B )
     => ( ( times_2397367101498566445atural @ A @ ( divide5121882707175180666atural @ B @ C ) )
        = ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ B ) @ C ) ) ) ).

% div_mult_swap
thf(fact_3744_dvd__div__mult,axiom,
    ! [C: int,B: int,A: int] :
      ( ( dvd_dvd_int @ C @ B )
     => ( ( times_times_int @ ( divide_divide_int @ B @ C ) @ A )
        = ( divide_divide_int @ ( times_times_int @ B @ A ) @ C ) ) ) ).

% dvd_div_mult
thf(fact_3745_dvd__div__mult,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( dvd_dvd_nat @ C @ B )
     => ( ( times_times_nat @ ( divide_divide_nat @ B @ C ) @ A )
        = ( divide_divide_nat @ ( times_times_nat @ B @ A ) @ C ) ) ) ).

% dvd_div_mult
thf(fact_3746_dvd__div__mult,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ B )
     => ( ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ B @ C ) @ A )
        = ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ B @ A ) @ C ) ) ) ).

% dvd_div_mult
thf(fact_3747_dvd__div__mult,axiom,
    ! [C: code_natural,B: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ C @ B )
     => ( ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ B @ C ) @ A )
        = ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ B @ A ) @ C ) ) ) ).

% dvd_div_mult
thf(fact_3748_div__plus__div__distrib__dvd__right,axiom,
    ! [C: int,B: int,A: int] :
      ( ( dvd_dvd_int @ C @ B )
     => ( ( divide_divide_int @ ( plus_plus_int @ A @ B ) @ C )
        = ( plus_plus_int @ ( divide_divide_int @ A @ C ) @ ( divide_divide_int @ B @ C ) ) ) ) ).

% div_plus_div_distrib_dvd_right
thf(fact_3749_div__plus__div__distrib__dvd__right,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( dvd_dvd_nat @ C @ B )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ B ) @ C )
        = ( plus_plus_nat @ ( divide_divide_nat @ A @ C ) @ ( divide_divide_nat @ B @ C ) ) ) ) ).

% div_plus_div_distrib_dvd_right
thf(fact_3750_div__plus__div__distrib__dvd__right,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ B )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
        = ( plus_p5714425477246183910nteger @ ( divide6298287555418463151nteger @ A @ C ) @ ( divide6298287555418463151nteger @ B @ C ) ) ) ) ).

% div_plus_div_distrib_dvd_right
thf(fact_3751_div__plus__div__distrib__dvd__right,axiom,
    ! [C: code_natural,B: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ C @ B )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ B ) @ C )
        = ( plus_p4538020629002901425atural @ ( divide5121882707175180666atural @ A @ C ) @ ( divide5121882707175180666atural @ B @ C ) ) ) ) ).

% div_plus_div_distrib_dvd_right
thf(fact_3752_div__plus__div__distrib__dvd__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( dvd_dvd_int @ C @ A )
     => ( ( divide_divide_int @ ( plus_plus_int @ A @ B ) @ C )
        = ( plus_plus_int @ ( divide_divide_int @ A @ C ) @ ( divide_divide_int @ B @ C ) ) ) ) ).

% div_plus_div_distrib_dvd_left
thf(fact_3753_div__plus__div__distrib__dvd__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( dvd_dvd_nat @ C @ A )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ B ) @ C )
        = ( plus_plus_nat @ ( divide_divide_nat @ A @ C ) @ ( divide_divide_nat @ B @ C ) ) ) ) ).

% div_plus_div_distrib_dvd_left
thf(fact_3754_div__plus__div__distrib__dvd__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ A )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
        = ( plus_p5714425477246183910nteger @ ( divide6298287555418463151nteger @ A @ C ) @ ( divide6298287555418463151nteger @ B @ C ) ) ) ) ).

% div_plus_div_distrib_dvd_left
thf(fact_3755_div__plus__div__distrib__dvd__left,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ C @ A )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ B ) @ C )
        = ( plus_p4538020629002901425atural @ ( divide5121882707175180666atural @ A @ C ) @ ( divide5121882707175180666atural @ B @ C ) ) ) ) ).

% div_plus_div_distrib_dvd_left
thf(fact_3756_unit__div__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( ( divide_divide_int @ B @ A )
          = ( divide_divide_int @ C @ A ) )
        = ( B = C ) ) ) ).

% unit_div_cancel
thf(fact_3757_unit__div__cancel,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( ( divide_divide_nat @ B @ A )
          = ( divide_divide_nat @ C @ A ) )
        = ( B = C ) ) ) ).

% unit_div_cancel
thf(fact_3758_unit__div__cancel,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ( ( ( divide6298287555418463151nteger @ B @ A )
          = ( divide6298287555418463151nteger @ C @ A ) )
        = ( B = C ) ) ) ).

% unit_div_cancel
thf(fact_3759_unit__div__cancel,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ( ( ( divide5121882707175180666atural @ B @ A )
          = ( divide5121882707175180666atural @ C @ A ) )
        = ( B = C ) ) ) ).

% unit_div_cancel
thf(fact_3760_div__unit__dvd__iff,axiom,
    ! [B: int,A: int,C: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( dvd_dvd_int @ ( divide_divide_int @ A @ B ) @ C )
        = ( dvd_dvd_int @ A @ C ) ) ) ).

% div_unit_dvd_iff
thf(fact_3761_div__unit__dvd__iff,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( dvd_dvd_nat @ ( divide_divide_nat @ A @ B ) @ C )
        = ( dvd_dvd_nat @ A @ C ) ) ) ).

% div_unit_dvd_iff
thf(fact_3762_div__unit__dvd__iff,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( dvd_dvd_Code_integer @ ( divide6298287555418463151nteger @ A @ B ) @ C )
        = ( dvd_dvd_Code_integer @ A @ C ) ) ) ).

% div_unit_dvd_iff
thf(fact_3763_div__unit__dvd__iff,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( dvd_dvd_Code_natural @ ( divide5121882707175180666atural @ A @ B ) @ C )
        = ( dvd_dvd_Code_natural @ A @ C ) ) ) ).

% div_unit_dvd_iff
thf(fact_3764_dvd__div__unit__iff,axiom,
    ! [B: int,A: int,C: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( dvd_dvd_int @ A @ ( divide_divide_int @ C @ B ) )
        = ( dvd_dvd_int @ A @ C ) ) ) ).

% dvd_div_unit_iff
thf(fact_3765_dvd__div__unit__iff,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( dvd_dvd_nat @ A @ ( divide_divide_nat @ C @ B ) )
        = ( dvd_dvd_nat @ A @ C ) ) ) ).

% dvd_div_unit_iff
thf(fact_3766_dvd__div__unit__iff,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( dvd_dvd_Code_integer @ A @ ( divide6298287555418463151nteger @ C @ B ) )
        = ( dvd_dvd_Code_integer @ A @ C ) ) ) ).

% dvd_div_unit_iff
thf(fact_3767_dvd__div__unit__iff,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( dvd_dvd_Code_natural @ A @ ( divide5121882707175180666atural @ C @ B ) )
        = ( dvd_dvd_Code_natural @ A @ C ) ) ) ).

% dvd_div_unit_iff
thf(fact_3768_dvd__div__neg,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ A )
     => ( ( divide_divide_int @ A @ ( uminus_uminus_int @ B ) )
        = ( uminus_uminus_int @ ( divide_divide_int @ A @ B ) ) ) ) ).

% dvd_div_neg
thf(fact_3769_dvd__div__neg,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ A )
     => ( ( divide6298287555418463151nteger @ A @ ( uminus1351360451143612070nteger @ B ) )
        = ( uminus1351360451143612070nteger @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% dvd_div_neg
thf(fact_3770_dvd__div__neg,axiom,
    ! [B: rat,A: rat] :
      ( ( dvd_dvd_rat @ B @ A )
     => ( ( divide_divide_rat @ A @ ( uminus_uminus_rat @ B ) )
        = ( uminus_uminus_rat @ ( divide_divide_rat @ A @ B ) ) ) ) ).

% dvd_div_neg
thf(fact_3771_dvd__neg__div,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ A )
     => ( ( divide_divide_int @ ( uminus_uminus_int @ A ) @ B )
        = ( uminus_uminus_int @ ( divide_divide_int @ A @ B ) ) ) ) ).

% dvd_neg_div
thf(fact_3772_dvd__neg__div,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ A )
     => ( ( divide6298287555418463151nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
        = ( uminus1351360451143612070nteger @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% dvd_neg_div
thf(fact_3773_dvd__neg__div,axiom,
    ! [B: rat,A: rat] :
      ( ( dvd_dvd_rat @ B @ A )
     => ( ( divide_divide_rat @ ( uminus_uminus_rat @ A ) @ B )
        = ( uminus_uminus_rat @ ( divide_divide_rat @ A @ B ) ) ) ) ).

% dvd_neg_div
thf(fact_3774_nat__dvd__not__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ~ ( dvd_dvd_nat @ N @ M ) ) ) ).

% nat_dvd_not_less
thf(fact_3775_dvd__pos__nat,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( dvd_dvd_nat @ M @ N )
       => ( ord_less_nat @ zero_zero_nat @ M ) ) ) ).

% dvd_pos_nat
thf(fact_3776_zdvd__antisym__nonneg,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ M )
     => ( ( ord_less_eq_int @ zero_zero_int @ N )
       => ( ( dvd_dvd_int @ M @ N )
         => ( ( dvd_dvd_int @ N @ M )
           => ( M = N ) ) ) ) ) ).

% zdvd_antisym_nonneg
thf(fact_3777_zdvd__not__zless,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ zero_zero_int @ M )
     => ( ( ord_less_int @ M @ N )
       => ~ ( dvd_dvd_int @ N @ M ) ) ) ).

% zdvd_not_zless
thf(fact_3778_fact__fact__dvd__fact,axiom,
    ! [K: nat,N: nat] : ( dvd_dvd_int @ ( times_times_int @ ( semiri1406184849735516958ct_int @ K ) @ ( semiri1406184849735516958ct_int @ N ) ) @ ( semiri1406184849735516958ct_int @ ( plus_plus_nat @ K @ N ) ) ) ).

% fact_fact_dvd_fact
thf(fact_3779_fact__fact__dvd__fact,axiom,
    ! [K: nat,N: nat] : ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ ( semiri3624122377584611663nteger @ K ) @ ( semiri3624122377584611663nteger @ N ) ) @ ( semiri3624122377584611663nteger @ ( plus_plus_nat @ K @ N ) ) ) ).

% fact_fact_dvd_fact
thf(fact_3780_fact__fact__dvd__fact,axiom,
    ! [K: nat,N: nat] : ( dvd_dvd_rat @ ( times_times_rat @ ( semiri773545260158071498ct_rat @ K ) @ ( semiri773545260158071498ct_rat @ N ) ) @ ( semiri773545260158071498ct_rat @ ( plus_plus_nat @ K @ N ) ) ) ).

% fact_fact_dvd_fact
thf(fact_3781_fact__fact__dvd__fact,axiom,
    ! [K: nat,N: nat] : ( dvd_dvd_nat @ ( times_times_nat @ ( semiri1408675320244567234ct_nat @ K ) @ ( semiri1408675320244567234ct_nat @ N ) ) @ ( semiri1408675320244567234ct_nat @ ( plus_plus_nat @ K @ N ) ) ) ).

% fact_fact_dvd_fact
thf(fact_3782_dvd__minus__self,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ M ) )
      = ( ( ord_less_nat @ N @ M )
        | ( dvd_dvd_nat @ M @ N ) ) ) ).

% dvd_minus_self
thf(fact_3783_zdvd__mult__cancel,axiom,
    ! [K: int,M: int,N: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ K @ M ) @ ( times_times_int @ K @ N ) )
     => ( ( K != zero_zero_int )
       => ( dvd_dvd_int @ M @ N ) ) ) ).

% zdvd_mult_cancel
thf(fact_3784_dvd__diffD,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ ( minus_minus_nat @ M @ N ) )
     => ( ( dvd_dvd_nat @ K @ N )
       => ( ( ord_less_eq_nat @ N @ M )
         => ( dvd_dvd_nat @ K @ M ) ) ) ) ).

% dvd_diffD
thf(fact_3785_dvd__diffD1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ ( minus_minus_nat @ M @ N ) )
     => ( ( dvd_dvd_nat @ K @ M )
       => ( ( ord_less_eq_nat @ N @ M )
         => ( dvd_dvd_nat @ K @ N ) ) ) ) ).

% dvd_diffD1
thf(fact_3786_less__eq__dvd__minus,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( dvd_dvd_nat @ M @ N )
        = ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ M ) ) ) ) ).

% less_eq_dvd_minus
thf(fact_3787_bezout__add__nat,axiom,
    ! [A: nat,B: nat] :
    ? [D3: nat,X5: nat,Y4: nat] :
      ( ( dvd_dvd_nat @ D3 @ A )
      & ( dvd_dvd_nat @ D3 @ B )
      & ( ( ( times_times_nat @ A @ X5 )
          = ( plus_plus_nat @ ( times_times_nat @ B @ Y4 ) @ D3 ) )
        | ( ( times_times_nat @ B @ X5 )
          = ( plus_plus_nat @ ( times_times_nat @ A @ Y4 ) @ D3 ) ) ) ) ).

% bezout_add_nat
thf(fact_3788_bezout__lemma__nat,axiom,
    ! [D: nat,A: nat,B: nat,X: nat,Y3: nat] :
      ( ( dvd_dvd_nat @ D @ A )
     => ( ( dvd_dvd_nat @ D @ B )
       => ( ( ( ( times_times_nat @ A @ X )
              = ( plus_plus_nat @ ( times_times_nat @ B @ Y3 ) @ D ) )
            | ( ( times_times_nat @ B @ X )
              = ( plus_plus_nat @ ( times_times_nat @ A @ Y3 ) @ D ) ) )
         => ? [X5: nat,Y4: nat] :
              ( ( dvd_dvd_nat @ D @ A )
              & ( dvd_dvd_nat @ D @ ( plus_plus_nat @ A @ B ) )
              & ( ( ( times_times_nat @ A @ X5 )
                  = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ Y4 ) @ D ) )
                | ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ X5 )
                  = ( plus_plus_nat @ ( times_times_nat @ A @ Y4 ) @ D ) ) ) ) ) ) ) ).

% bezout_lemma_nat
thf(fact_3789_bezout1__nat,axiom,
    ! [A: nat,B: nat] :
    ? [D3: nat,X5: nat,Y4: nat] :
      ( ( dvd_dvd_nat @ D3 @ A )
      & ( dvd_dvd_nat @ D3 @ B )
      & ( ( ( minus_minus_nat @ ( times_times_nat @ A @ X5 ) @ ( times_times_nat @ B @ Y4 ) )
          = D3 )
        | ( ( minus_minus_nat @ ( times_times_nat @ B @ X5 ) @ ( times_times_nat @ A @ Y4 ) )
          = D3 ) ) ) ).

% bezout1_nat
thf(fact_3790_zdvd__period,axiom,
    ! [A: int,D: int,X: int,T: int,C: int] :
      ( ( dvd_dvd_int @ A @ D )
     => ( ( dvd_dvd_int @ A @ ( plus_plus_int @ X @ T ) )
        = ( dvd_dvd_int @ A @ ( plus_plus_int @ ( plus_plus_int @ X @ ( times_times_int @ C @ D ) ) @ T ) ) ) ) ).

% zdvd_period
thf(fact_3791_zdvd__reduce,axiom,
    ! [K: int,N: int,M: int] :
      ( ( dvd_dvd_int @ K @ ( plus_plus_int @ N @ ( times_times_int @ K @ M ) ) )
      = ( dvd_dvd_int @ K @ N ) ) ).

% zdvd_reduce
thf(fact_3792_nat__dvd__iff,axiom,
    ! [Z: int,M: nat] :
      ( ( dvd_dvd_nat @ ( nat2 @ Z ) @ M )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ Z )
         => ( dvd_dvd_int @ Z @ ( semiri1314217659103216013at_int @ M ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ Z )
         => ( M = zero_zero_nat ) ) ) ) ).

% nat_dvd_iff
thf(fact_3793_gbinomial__addition__formula,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ A @ ( suc @ K ) )
      = ( plus_plus_rat @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ ( suc @ K ) ) @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ K ) ) ) ).

% gbinomial_addition_formula
thf(fact_3794_gbinomial__absorb__comp,axiom,
    ! [A: rat,K: nat] :
      ( ( times_times_rat @ ( minus_minus_rat @ A @ ( semiri681578069525770553at_rat @ K ) ) @ ( gbinomial_rat @ A @ K ) )
      = ( times_times_rat @ A @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ K ) ) ) ).

% gbinomial_absorb_comp
thf(fact_3795_gbinomial__mult__1,axiom,
    ! [A: rat,K: nat] :
      ( ( times_times_rat @ A @ ( gbinomial_rat @ A @ K ) )
      = ( plus_plus_rat @ ( times_times_rat @ ( semiri681578069525770553at_rat @ K ) @ ( gbinomial_rat @ A @ K ) ) @ ( times_times_rat @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) @ ( gbinomial_rat @ A @ ( suc @ K ) ) ) ) ) ).

% gbinomial_mult_1
thf(fact_3796_gbinomial__mult__1_H,axiom,
    ! [A: rat,K: nat] :
      ( ( times_times_rat @ ( gbinomial_rat @ A @ K ) @ A )
      = ( plus_plus_rat @ ( times_times_rat @ ( semiri681578069525770553at_rat @ K ) @ ( gbinomial_rat @ A @ K ) ) @ ( times_times_rat @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) @ ( gbinomial_rat @ A @ ( suc @ K ) ) ) ) ) ).

% gbinomial_mult_1'
thf(fact_3797_unit__dvdE,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ~ ( ( A != zero_z2226904508553997617atural )
         => ! [C2: code_natural] :
              ( B
             != ( times_2397367101498566445atural @ A @ C2 ) ) ) ) ).

% unit_dvdE
thf(fact_3798_unit__dvdE,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ~ ( ( A != zero_zero_nat )
         => ! [C2: nat] :
              ( B
             != ( times_times_nat @ A @ C2 ) ) ) ) ).

% unit_dvdE
thf(fact_3799_unit__dvdE,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ~ ( ( A != zero_zero_int )
         => ! [C2: int] :
              ( B
             != ( times_times_int @ A @ C2 ) ) ) ) ).

% unit_dvdE
thf(fact_3800_unit__dvdE,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ~ ( ( A != zero_z3403309356797280102nteger )
         => ! [C2: code_integer] :
              ( B
             != ( times_3573771949741848930nteger @ A @ C2 ) ) ) ) ).

% unit_dvdE
thf(fact_3801_dvd__div__eq__mult,axiom,
    ! [A: int,B: int,C: int] :
      ( ( A != zero_zero_int )
     => ( ( dvd_dvd_int @ A @ B )
       => ( ( ( divide_divide_int @ B @ A )
            = C )
          = ( B
            = ( times_times_int @ C @ A ) ) ) ) ) ).

% dvd_div_eq_mult
thf(fact_3802_dvd__div__eq__mult,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( A != zero_zero_nat )
     => ( ( dvd_dvd_nat @ A @ B )
       => ( ( ( divide_divide_nat @ B @ A )
            = C )
          = ( B
            = ( times_times_nat @ C @ A ) ) ) ) ) ).

% dvd_div_eq_mult
thf(fact_3803_dvd__div__eq__mult,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( dvd_dvd_Code_integer @ A @ B )
       => ( ( ( divide6298287555418463151nteger @ B @ A )
            = C )
          = ( B
            = ( times_3573771949741848930nteger @ C @ A ) ) ) ) ) ).

% dvd_div_eq_mult
thf(fact_3804_dvd__div__eq__mult,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( dvd_dvd_Code_natural @ A @ B )
       => ( ( ( divide5121882707175180666atural @ B @ A )
            = C )
          = ( B
            = ( times_2397367101498566445atural @ C @ A ) ) ) ) ) ).

% dvd_div_eq_mult
thf(fact_3805_div__dvd__iff__mult,axiom,
    ! [B: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( dvd_dvd_int @ B @ A )
       => ( ( dvd_dvd_int @ ( divide_divide_int @ A @ B ) @ C )
          = ( dvd_dvd_int @ A @ ( times_times_int @ C @ B ) ) ) ) ) ).

% div_dvd_iff_mult
thf(fact_3806_div__dvd__iff__mult,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( B != zero_zero_nat )
     => ( ( dvd_dvd_nat @ B @ A )
       => ( ( dvd_dvd_nat @ ( divide_divide_nat @ A @ B ) @ C )
          = ( dvd_dvd_nat @ A @ ( times_times_nat @ C @ B ) ) ) ) ) ).

% div_dvd_iff_mult
thf(fact_3807_div__dvd__iff__mult,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( dvd_dvd_Code_integer @ B @ A )
       => ( ( dvd_dvd_Code_integer @ ( divide6298287555418463151nteger @ A @ B ) @ C )
          = ( dvd_dvd_Code_integer @ A @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ) ).

% div_dvd_iff_mult
thf(fact_3808_div__dvd__iff__mult,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( dvd_dvd_Code_natural @ B @ A )
       => ( ( dvd_dvd_Code_natural @ ( divide5121882707175180666atural @ A @ B ) @ C )
          = ( dvd_dvd_Code_natural @ A @ ( times_2397367101498566445atural @ C @ B ) ) ) ) ) ).

% div_dvd_iff_mult
thf(fact_3809_dvd__div__iff__mult,axiom,
    ! [C: int,B: int,A: int] :
      ( ( C != zero_zero_int )
     => ( ( dvd_dvd_int @ C @ B )
       => ( ( dvd_dvd_int @ A @ ( divide_divide_int @ B @ C ) )
          = ( dvd_dvd_int @ ( times_times_int @ A @ C ) @ B ) ) ) ) ).

% dvd_div_iff_mult
thf(fact_3810_dvd__div__iff__mult,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( C != zero_zero_nat )
     => ( ( dvd_dvd_nat @ C @ B )
       => ( ( dvd_dvd_nat @ A @ ( divide_divide_nat @ B @ C ) )
          = ( dvd_dvd_nat @ ( times_times_nat @ A @ C ) @ B ) ) ) ) ).

% dvd_div_iff_mult
thf(fact_3811_dvd__div__iff__mult,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( C != zero_z3403309356797280102nteger )
     => ( ( dvd_dvd_Code_integer @ C @ B )
       => ( ( dvd_dvd_Code_integer @ A @ ( divide6298287555418463151nteger @ B @ C ) )
          = ( dvd_dvd_Code_integer @ ( times_3573771949741848930nteger @ A @ C ) @ B ) ) ) ) ).

% dvd_div_iff_mult
thf(fact_3812_dvd__div__iff__mult,axiom,
    ! [C: code_natural,B: code_natural,A: code_natural] :
      ( ( C != zero_z2226904508553997617atural )
     => ( ( dvd_dvd_Code_natural @ C @ B )
       => ( ( dvd_dvd_Code_natural @ A @ ( divide5121882707175180666atural @ B @ C ) )
          = ( dvd_dvd_Code_natural @ ( times_2397367101498566445atural @ A @ C ) @ B ) ) ) ) ).

% dvd_div_iff_mult
thf(fact_3813_dvd__div__div__eq__mult,axiom,
    ! [A: int,C: int,B: int,D: int] :
      ( ( A != zero_zero_int )
     => ( ( C != zero_zero_int )
       => ( ( dvd_dvd_int @ A @ B )
         => ( ( dvd_dvd_int @ C @ D )
           => ( ( ( divide_divide_int @ B @ A )
                = ( divide_divide_int @ D @ C ) )
              = ( ( times_times_int @ B @ C )
                = ( times_times_int @ A @ D ) ) ) ) ) ) ) ).

% dvd_div_div_eq_mult
thf(fact_3814_dvd__div__div__eq__mult,axiom,
    ! [A: nat,C: nat,B: nat,D: nat] :
      ( ( A != zero_zero_nat )
     => ( ( C != zero_zero_nat )
       => ( ( dvd_dvd_nat @ A @ B )
         => ( ( dvd_dvd_nat @ C @ D )
           => ( ( ( divide_divide_nat @ B @ A )
                = ( divide_divide_nat @ D @ C ) )
              = ( ( times_times_nat @ B @ C )
                = ( times_times_nat @ A @ D ) ) ) ) ) ) ) ).

% dvd_div_div_eq_mult
thf(fact_3815_dvd__div__div__eq__mult,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( C != zero_z3403309356797280102nteger )
       => ( ( dvd_dvd_Code_integer @ A @ B )
         => ( ( dvd_dvd_Code_integer @ C @ D )
           => ( ( ( divide6298287555418463151nteger @ B @ A )
                = ( divide6298287555418463151nteger @ D @ C ) )
              = ( ( times_3573771949741848930nteger @ B @ C )
                = ( times_3573771949741848930nteger @ A @ D ) ) ) ) ) ) ) ).

% dvd_div_div_eq_mult
thf(fact_3816_dvd__div__div__eq__mult,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural,D: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( C != zero_z2226904508553997617atural )
       => ( ( dvd_dvd_Code_natural @ A @ B )
         => ( ( dvd_dvd_Code_natural @ C @ D )
           => ( ( ( divide5121882707175180666atural @ B @ A )
                = ( divide5121882707175180666atural @ D @ C ) )
              = ( ( times_2397367101498566445atural @ B @ C )
                = ( times_2397367101498566445atural @ A @ D ) ) ) ) ) ) ) ).

% dvd_div_div_eq_mult
thf(fact_3817_unit__div__eq__0__iff,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( ( divide_divide_int @ A @ B )
          = zero_zero_int )
        = ( A = zero_zero_int ) ) ) ).

% unit_div_eq_0_iff
thf(fact_3818_unit__div__eq__0__iff,axiom,
    ! [B: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( ( divide_divide_nat @ A @ B )
          = zero_zero_nat )
        = ( A = zero_zero_nat ) ) ) ).

% unit_div_eq_0_iff
thf(fact_3819_unit__div__eq__0__iff,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( ( divide6298287555418463151nteger @ A @ B )
          = zero_z3403309356797280102nteger )
        = ( A = zero_z3403309356797280102nteger ) ) ) ).

% unit_div_eq_0_iff
thf(fact_3820_unit__div__eq__0__iff,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( ( divide5121882707175180666atural @ A @ B )
          = zero_z2226904508553997617atural )
        = ( A = zero_z2226904508553997617atural ) ) ) ).

% unit_div_eq_0_iff
thf(fact_3821_is__unit__div__mult2__eq,axiom,
    ! [B: int,C: int,A: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( dvd_dvd_int @ C @ one_one_int )
       => ( ( divide_divide_int @ A @ ( times_times_int @ B @ C ) )
          = ( divide_divide_int @ ( divide_divide_int @ A @ B ) @ C ) ) ) ) ).

% is_unit_div_mult2_eq
thf(fact_3822_is__unit__div__mult2__eq,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( dvd_dvd_nat @ C @ one_one_nat )
       => ( ( divide_divide_nat @ A @ ( times_times_nat @ B @ C ) )
          = ( divide_divide_nat @ ( divide_divide_nat @ A @ B ) @ C ) ) ) ) ).

% is_unit_div_mult2_eq
thf(fact_3823_is__unit__div__mult2__eq,axiom,
    ! [B: code_integer,C: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( dvd_dvd_Code_integer @ C @ one_one_Code_integer )
       => ( ( divide6298287555418463151nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) )
          = ( divide6298287555418463151nteger @ ( divide6298287555418463151nteger @ A @ B ) @ C ) ) ) ) ).

% is_unit_div_mult2_eq
thf(fact_3824_is__unit__div__mult2__eq,axiom,
    ! [B: code_natural,C: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( dvd_dvd_Code_natural @ C @ one_one_Code_natural )
       => ( ( divide5121882707175180666atural @ A @ ( times_2397367101498566445atural @ B @ C ) )
          = ( divide5121882707175180666atural @ ( divide5121882707175180666atural @ A @ B ) @ C ) ) ) ) ).

% is_unit_div_mult2_eq
thf(fact_3825_unit__div__mult__swap,axiom,
    ! [C: int,A: int,B: int] :
      ( ( dvd_dvd_int @ C @ one_one_int )
     => ( ( times_times_int @ A @ ( divide_divide_int @ B @ C ) )
        = ( divide_divide_int @ ( times_times_int @ A @ B ) @ C ) ) ) ).

% unit_div_mult_swap
thf(fact_3826_unit__div__mult__swap,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( dvd_dvd_nat @ C @ one_one_nat )
     => ( ( times_times_nat @ A @ ( divide_divide_nat @ B @ C ) )
        = ( divide_divide_nat @ ( times_times_nat @ A @ B ) @ C ) ) ) ).

% unit_div_mult_swap
thf(fact_3827_unit__div__mult__swap,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ one_one_Code_integer )
     => ( ( times_3573771949741848930nteger @ A @ ( divide6298287555418463151nteger @ B @ C ) )
        = ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ B ) @ C ) ) ) ).

% unit_div_mult_swap
thf(fact_3828_unit__div__mult__swap,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ C @ one_one_Code_natural )
     => ( ( times_2397367101498566445atural @ A @ ( divide5121882707175180666atural @ B @ C ) )
        = ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ B ) @ C ) ) ) ).

% unit_div_mult_swap
thf(fact_3829_unit__div__commute,axiom,
    ! [B: int,A: int,C: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( times_times_int @ ( divide_divide_int @ A @ B ) @ C )
        = ( divide_divide_int @ ( times_times_int @ A @ C ) @ B ) ) ) ).

% unit_div_commute
thf(fact_3830_unit__div__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ C )
        = ( divide_divide_nat @ ( times_times_nat @ A @ C ) @ B ) ) ) ).

% unit_div_commute
thf(fact_3831_unit__div__commute,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ C )
        = ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ C ) @ B ) ) ) ).

% unit_div_commute
thf(fact_3832_unit__div__commute,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ C )
        = ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ C ) @ B ) ) ) ).

% unit_div_commute
thf(fact_3833_div__mult__unit2,axiom,
    ! [C: int,B: int,A: int] :
      ( ( dvd_dvd_int @ C @ one_one_int )
     => ( ( dvd_dvd_int @ B @ A )
       => ( ( divide_divide_int @ A @ ( times_times_int @ B @ C ) )
          = ( divide_divide_int @ ( divide_divide_int @ A @ B ) @ C ) ) ) ) ).

% div_mult_unit2
thf(fact_3834_div__mult__unit2,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( dvd_dvd_nat @ C @ one_one_nat )
     => ( ( dvd_dvd_nat @ B @ A )
       => ( ( divide_divide_nat @ A @ ( times_times_nat @ B @ C ) )
          = ( divide_divide_nat @ ( divide_divide_nat @ A @ B ) @ C ) ) ) ) ).

% div_mult_unit2
thf(fact_3835_div__mult__unit2,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ one_one_Code_integer )
     => ( ( dvd_dvd_Code_integer @ B @ A )
       => ( ( divide6298287555418463151nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) )
          = ( divide6298287555418463151nteger @ ( divide6298287555418463151nteger @ A @ B ) @ C ) ) ) ) ).

% div_mult_unit2
thf(fact_3836_div__mult__unit2,axiom,
    ! [C: code_natural,B: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ C @ one_one_Code_natural )
     => ( ( dvd_dvd_Code_natural @ B @ A )
       => ( ( divide5121882707175180666atural @ A @ ( times_2397367101498566445atural @ B @ C ) )
          = ( divide5121882707175180666atural @ ( divide5121882707175180666atural @ A @ B ) @ C ) ) ) ) ).

% div_mult_unit2
thf(fact_3837_unit__eq__div2,axiom,
    ! [B: int,A: int,C: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( A
          = ( divide_divide_int @ C @ B ) )
        = ( ( times_times_int @ A @ B )
          = C ) ) ) ).

% unit_eq_div2
thf(fact_3838_unit__eq__div2,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( A
          = ( divide_divide_nat @ C @ B ) )
        = ( ( times_times_nat @ A @ B )
          = C ) ) ) ).

% unit_eq_div2
thf(fact_3839_unit__eq__div2,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( A
          = ( divide6298287555418463151nteger @ C @ B ) )
        = ( ( times_3573771949741848930nteger @ A @ B )
          = C ) ) ) ).

% unit_eq_div2
thf(fact_3840_unit__eq__div2,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( A
          = ( divide5121882707175180666atural @ C @ B ) )
        = ( ( times_2397367101498566445atural @ A @ B )
          = C ) ) ) ).

% unit_eq_div2
thf(fact_3841_unit__eq__div1,axiom,
    ! [B: int,A: int,C: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( ( divide_divide_int @ A @ B )
          = C )
        = ( A
          = ( times_times_int @ C @ B ) ) ) ) ).

% unit_eq_div1
thf(fact_3842_unit__eq__div1,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( ( divide_divide_nat @ A @ B )
          = C )
        = ( A
          = ( times_times_nat @ C @ B ) ) ) ) ).

% unit_eq_div1
thf(fact_3843_unit__eq__div1,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( ( divide6298287555418463151nteger @ A @ B )
          = C )
        = ( A
          = ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% unit_eq_div1
thf(fact_3844_unit__eq__div1,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( ( divide5121882707175180666atural @ A @ B )
          = C )
        = ( A
          = ( times_2397367101498566445atural @ C @ B ) ) ) ) ).

% unit_eq_div1
thf(fact_3845_is__unit__power__iff,axiom,
    ! [A: code_integer,N: nat] :
      ( ( dvd_dvd_Code_integer @ ( power_8256067586552552935nteger @ A @ N ) @ one_one_Code_integer )
      = ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
        | ( N = zero_zero_nat ) ) ) ).

% is_unit_power_iff
thf(fact_3846_is__unit__power__iff,axiom,
    ! [A: code_natural,N: nat] :
      ( ( dvd_dvd_Code_natural @ ( power_7079662738309270450atural @ A @ N ) @ one_one_Code_natural )
      = ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
        | ( N = zero_zero_nat ) ) ) ).

% is_unit_power_iff
thf(fact_3847_is__unit__power__iff,axiom,
    ! [A: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( power_power_nat @ A @ N ) @ one_one_nat )
      = ( ( dvd_dvd_nat @ A @ one_one_nat )
        | ( N = zero_zero_nat ) ) ) ).

% is_unit_power_iff
thf(fact_3848_is__unit__power__iff,axiom,
    ! [A: int,N: nat] :
      ( ( dvd_dvd_int @ ( power_power_int @ A @ N ) @ one_one_int )
      = ( ( dvd_dvd_int @ A @ one_one_int )
        | ( N = zero_zero_nat ) ) ) ).

% is_unit_power_iff
thf(fact_3849_dvd__imp__le,axiom,
    ! [K: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_nat @ K @ N ) ) ) ).

% dvd_imp_le
thf(fact_3850_dvd__mult__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( dvd_dvd_nat @ M @ N ) ) ) ).

% dvd_mult_cancel
thf(fact_3851_nat__mult__dvd__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( dvd_dvd_nat @ M @ N ) ) ) ).

% nat_mult_dvd_cancel1
thf(fact_3852_bezout__add__strong__nat,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ? [D3: nat,X5: nat,Y4: nat] :
          ( ( dvd_dvd_nat @ D3 @ A )
          & ( dvd_dvd_nat @ D3 @ B )
          & ( ( times_times_nat @ A @ X5 )
            = ( plus_plus_nat @ ( times_times_nat @ B @ Y4 ) @ D3 ) ) ) ) ).

% bezout_add_strong_nat
thf(fact_3853_zdvd__imp__le,axiom,
    ! [Z: int,N: int] :
      ( ( dvd_dvd_int @ Z @ N )
     => ( ( ord_less_int @ zero_zero_int @ N )
       => ( ord_less_eq_int @ Z @ N ) ) ) ).

% zdvd_imp_le
thf(fact_3854_dvd__imp__le__int,axiom,
    ! [I: int,D: int] :
      ( ( I != zero_zero_int )
     => ( ( dvd_dvd_int @ D @ I )
       => ( ord_less_eq_int @ ( abs_abs_int @ D ) @ ( abs_abs_int @ I ) ) ) ) ).

% dvd_imp_le_int
thf(fact_3855_of__int__divide__in__Ints,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ A )
     => ( member_int @ ( divide_divide_int @ ( ring_1_of_int_int @ A ) @ ( ring_1_of_int_int @ B ) ) @ ring_1_Ints_int ) ) ).

% of_int_divide_in_Ints
thf(fact_3856_of__int__divide__in__Ints,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ A )
     => ( member_Code_integer @ ( divide6298287555418463151nteger @ ( ring_18347121197199848620nteger @ A ) @ ( ring_18347121197199848620nteger @ B ) ) @ ring_11222124179247155820nteger ) ) ).

% of_int_divide_in_Ints
thf(fact_3857_of__int__divide__in__Ints,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ A )
     => ( member_rat @ ( divide_divide_rat @ ( ring_1_of_int_rat @ A ) @ ( ring_1_of_int_rat @ B ) ) @ ring_1_Ints_rat ) ) ).

% of_int_divide_in_Ints
thf(fact_3858_dvd__fact,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ M )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( dvd_dvd_nat @ M @ ( semiri1408675320244567234ct_nat @ N ) ) ) ) ).

% dvd_fact
thf(fact_3859_Suc__times__gbinomial,axiom,
    ! [K: nat,A: rat] :
      ( ( times_times_rat @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) @ ( gbinomial_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( suc @ K ) ) )
      = ( times_times_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( gbinomial_rat @ A @ K ) ) ) ).

% Suc_times_gbinomial
thf(fact_3860_gbinomial__absorption,axiom,
    ! [K: nat,A: rat] :
      ( ( times_times_rat @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) @ ( gbinomial_rat @ A @ ( suc @ K ) ) )
      = ( times_times_rat @ A @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ K ) ) ) ).

% gbinomial_absorption
thf(fact_3861_is__unitE,axiom,
    ! [A: int,C: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ~ ( ( A != zero_zero_int )
         => ! [B2: int] :
              ( ( B2 != zero_zero_int )
             => ( ( dvd_dvd_int @ B2 @ one_one_int )
               => ( ( ( divide_divide_int @ one_one_int @ A )
                    = B2 )
                 => ( ( ( divide_divide_int @ one_one_int @ B2 )
                      = A )
                   => ( ( ( times_times_int @ A @ B2 )
                        = one_one_int )
                     => ( ( divide_divide_int @ C @ A )
                       != ( times_times_int @ C @ B2 ) ) ) ) ) ) ) ) ) ).

% is_unitE
thf(fact_3862_is__unitE,axiom,
    ! [A: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ~ ( ( A != zero_zero_nat )
         => ! [B2: nat] :
              ( ( B2 != zero_zero_nat )
             => ( ( dvd_dvd_nat @ B2 @ one_one_nat )
               => ( ( ( divide_divide_nat @ one_one_nat @ A )
                    = B2 )
                 => ( ( ( divide_divide_nat @ one_one_nat @ B2 )
                      = A )
                   => ( ( ( times_times_nat @ A @ B2 )
                        = one_one_nat )
                     => ( ( divide_divide_nat @ C @ A )
                       != ( times_times_nat @ C @ B2 ) ) ) ) ) ) ) ) ) ).

% is_unitE
thf(fact_3863_is__unitE,axiom,
    ! [A: code_integer,C: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ one_one_Code_integer )
     => ~ ( ( A != zero_z3403309356797280102nteger )
         => ! [B2: code_integer] :
              ( ( B2 != zero_z3403309356797280102nteger )
             => ( ( dvd_dvd_Code_integer @ B2 @ one_one_Code_integer )
               => ( ( ( divide6298287555418463151nteger @ one_one_Code_integer @ A )
                    = B2 )
                 => ( ( ( divide6298287555418463151nteger @ one_one_Code_integer @ B2 )
                      = A )
                   => ( ( ( times_3573771949741848930nteger @ A @ B2 )
                        = one_one_Code_integer )
                     => ( ( divide6298287555418463151nteger @ C @ A )
                       != ( times_3573771949741848930nteger @ C @ B2 ) ) ) ) ) ) ) ) ) ).

% is_unitE
thf(fact_3864_is__unitE,axiom,
    ! [A: code_natural,C: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ one_one_Code_natural )
     => ~ ( ( A != zero_z2226904508553997617atural )
         => ! [B2: code_natural] :
              ( ( B2 != zero_z2226904508553997617atural )
             => ( ( dvd_dvd_Code_natural @ B2 @ one_one_Code_natural )
               => ( ( ( divide5121882707175180666atural @ one_one_Code_natural @ A )
                    = B2 )
                 => ( ( ( divide5121882707175180666atural @ one_one_Code_natural @ B2 )
                      = A )
                   => ( ( ( times_2397367101498566445atural @ A @ B2 )
                        = one_one_Code_natural )
                     => ( ( divide5121882707175180666atural @ C @ A )
                       != ( times_2397367101498566445atural @ C @ B2 ) ) ) ) ) ) ) ) ) ).

% is_unitE
thf(fact_3865_is__unit__div__mult__cancel__left,axiom,
    ! [A: int,B: int] :
      ( ( A != zero_zero_int )
     => ( ( dvd_dvd_int @ B @ one_one_int )
       => ( ( divide_divide_int @ A @ ( times_times_int @ A @ B ) )
          = ( divide_divide_int @ one_one_int @ B ) ) ) ) ).

% is_unit_div_mult_cancel_left
thf(fact_3866_is__unit__div__mult__cancel__left,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ( ( dvd_dvd_nat @ B @ one_one_nat )
       => ( ( divide_divide_nat @ A @ ( times_times_nat @ A @ B ) )
          = ( divide_divide_nat @ one_one_nat @ B ) ) ) ) ).

% is_unit_div_mult_cancel_left
thf(fact_3867_is__unit__div__mult__cancel__left,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
       => ( ( divide6298287555418463151nteger @ A @ ( times_3573771949741848930nteger @ A @ B ) )
          = ( divide6298287555418463151nteger @ one_one_Code_integer @ B ) ) ) ) ).

% is_unit_div_mult_cancel_left
thf(fact_3868_is__unit__div__mult__cancel__left,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
       => ( ( divide5121882707175180666atural @ A @ ( times_2397367101498566445atural @ A @ B ) )
          = ( divide5121882707175180666atural @ one_one_Code_natural @ B ) ) ) ) ).

% is_unit_div_mult_cancel_left
thf(fact_3869_is__unit__div__mult__cancel__right,axiom,
    ! [A: int,B: int] :
      ( ( A != zero_zero_int )
     => ( ( dvd_dvd_int @ B @ one_one_int )
       => ( ( divide_divide_int @ A @ ( times_times_int @ B @ A ) )
          = ( divide_divide_int @ one_one_int @ B ) ) ) ) ).

% is_unit_div_mult_cancel_right
thf(fact_3870_is__unit__div__mult__cancel__right,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ( ( dvd_dvd_nat @ B @ one_one_nat )
       => ( ( divide_divide_nat @ A @ ( times_times_nat @ B @ A ) )
          = ( divide_divide_nat @ one_one_nat @ B ) ) ) ) ).

% is_unit_div_mult_cancel_right
thf(fact_3871_is__unit__div__mult__cancel__right,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
       => ( ( divide6298287555418463151nteger @ A @ ( times_3573771949741848930nteger @ B @ A ) )
          = ( divide6298287555418463151nteger @ one_one_Code_integer @ B ) ) ) ) ).

% is_unit_div_mult_cancel_right
thf(fact_3872_is__unit__div__mult__cancel__right,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
       => ( ( divide5121882707175180666atural @ A @ ( times_2397367101498566445atural @ B @ A ) )
          = ( divide5121882707175180666atural @ one_one_Code_natural @ B ) ) ) ) ).

% is_unit_div_mult_cancel_right
thf(fact_3873_dvd__power__iff,axiom,
    ! [X: code_integer,M: nat,N: nat] :
      ( ( X != zero_z3403309356797280102nteger )
     => ( ( dvd_dvd_Code_integer @ ( power_8256067586552552935nteger @ X @ M ) @ ( power_8256067586552552935nteger @ X @ N ) )
        = ( ( dvd_dvd_Code_integer @ X @ one_one_Code_integer )
          | ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% dvd_power_iff
thf(fact_3874_dvd__power__iff,axiom,
    ! [X: code_natural,M: nat,N: nat] :
      ( ( X != zero_z2226904508553997617atural )
     => ( ( dvd_dvd_Code_natural @ ( power_7079662738309270450atural @ X @ M ) @ ( power_7079662738309270450atural @ X @ N ) )
        = ( ( dvd_dvd_Code_natural @ X @ one_one_Code_natural )
          | ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% dvd_power_iff
thf(fact_3875_dvd__power__iff,axiom,
    ! [X: nat,M: nat,N: nat] :
      ( ( X != zero_zero_nat )
     => ( ( dvd_dvd_nat @ ( power_power_nat @ X @ M ) @ ( power_power_nat @ X @ N ) )
        = ( ( dvd_dvd_nat @ X @ one_one_nat )
          | ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% dvd_power_iff
thf(fact_3876_dvd__power__iff,axiom,
    ! [X: int,M: nat,N: nat] :
      ( ( X != zero_zero_int )
     => ( ( dvd_dvd_int @ ( power_power_int @ X @ M ) @ ( power_power_int @ X @ N ) )
        = ( ( dvd_dvd_int @ X @ one_one_int )
          | ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% dvd_power_iff
thf(fact_3877_dvd__power,axiom,
    ! [N: nat,X: code_integer] :
      ( ( ( ord_less_nat @ zero_zero_nat @ N )
        | ( X = one_one_Code_integer ) )
     => ( dvd_dvd_Code_integer @ X @ ( power_8256067586552552935nteger @ X @ N ) ) ) ).

% dvd_power
thf(fact_3878_dvd__power,axiom,
    ! [N: nat,X: rat] :
      ( ( ( ord_less_nat @ zero_zero_nat @ N )
        | ( X = one_one_rat ) )
     => ( dvd_dvd_rat @ X @ ( power_power_rat @ X @ N ) ) ) ).

% dvd_power
thf(fact_3879_dvd__power,axiom,
    ! [N: nat,X: code_natural] :
      ( ( ( ord_less_nat @ zero_zero_nat @ N )
        | ( X = one_one_Code_natural ) )
     => ( dvd_dvd_Code_natural @ X @ ( power_7079662738309270450atural @ X @ N ) ) ) ).

% dvd_power
thf(fact_3880_dvd__power,axiom,
    ! [N: nat,X: nat] :
      ( ( ( ord_less_nat @ zero_zero_nat @ N )
        | ( X = one_one_nat ) )
     => ( dvd_dvd_nat @ X @ ( power_power_nat @ X @ N ) ) ) ).

% dvd_power
thf(fact_3881_dvd__power,axiom,
    ! [N: nat,X: int] :
      ( ( ( ord_less_nat @ zero_zero_nat @ N )
        | ( X = one_one_int ) )
     => ( dvd_dvd_int @ X @ ( power_power_int @ X @ N ) ) ) ).

% dvd_power
thf(fact_3882_dvd__mult__cancel1,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ M @ N ) @ M )
        = ( N = one_one_nat ) ) ) ).

% dvd_mult_cancel1
thf(fact_3883_dvd__mult__cancel2,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ N @ M ) @ M )
        = ( N = one_one_nat ) ) ) ).

% dvd_mult_cancel2
thf(fact_3884_dvd__minus__add,axiom,
    ! [Q2: nat,N: nat,R: nat,M: nat] :
      ( ( ord_less_eq_nat @ Q2 @ N )
     => ( ( ord_less_eq_nat @ Q2 @ ( times_times_nat @ R @ M ) )
       => ( ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ Q2 ) )
          = ( dvd_dvd_nat @ M @ ( plus_plus_nat @ N @ ( minus_minus_nat @ ( times_times_nat @ R @ M ) @ Q2 ) ) ) ) ) ) ).

% dvd_minus_add
thf(fact_3885_zdvd__mult__cancel1,axiom,
    ! [M: int,N: int] :
      ( ( M != zero_zero_int )
     => ( ( dvd_dvd_int @ ( times_times_int @ M @ N ) @ M )
        = ( ( abs_abs_int @ N )
          = one_one_int ) ) ) ).

% zdvd_mult_cancel1
thf(fact_3886_gbinomial__factors,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( suc @ K ) )
      = ( times_times_rat @ ( divide_divide_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) ) @ ( gbinomial_rat @ A @ K ) ) ) ).

% gbinomial_factors
thf(fact_3887_gbinomial__rec,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( suc @ K ) )
      = ( times_times_rat @ ( gbinomial_rat @ A @ K ) @ ( divide_divide_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) ) ) ) ).

% gbinomial_rec
thf(fact_3888_power__dvd__imp__le,axiom,
    ! [I: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( power_power_nat @ I @ M ) @ ( power_power_nat @ I @ N ) )
     => ( ( ord_less_nat @ one_one_nat @ I )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_dvd_imp_le
thf(fact_3889_gbinomial__negated__upper,axiom,
    ( gbinomial_rat
    = ( ^ [A4: rat,K3: nat] : ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K3 ) @ ( gbinomial_rat @ ( minus_minus_rat @ ( minus_minus_rat @ ( semiri681578069525770553at_rat @ K3 ) @ A4 ) @ one_one_rat ) @ K3 ) ) ) ) ).

% gbinomial_negated_upper
thf(fact_3890_gbinomial__index__swap,axiom,
    ! [K: nat,N: nat] :
      ( ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K ) @ ( gbinomial_rat @ ( minus_minus_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ N ) ) @ one_one_rat ) @ K ) )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( gbinomial_rat @ ( minus_minus_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ K ) ) @ one_one_rat ) @ N ) ) ) ).

% gbinomial_index_swap
thf(fact_3891_normalize__denom__pos,axiom,
    ! [R: product_prod_int_int,P4: int,Q2: int] :
      ( ( ( normalize @ R )
        = ( product_Pair_int_int @ P4 @ Q2 ) )
     => ( ord_less_int @ zero_zero_int @ Q2 ) ) ).

% normalize_denom_pos
thf(fact_3892_normalize__crossproduct,axiom,
    ! [Q2: int,S: int,P4: int,R: int] :
      ( ( Q2 != zero_zero_int )
     => ( ( S != zero_zero_int )
       => ( ( ( normalize @ ( product_Pair_int_int @ P4 @ Q2 ) )
            = ( normalize @ ( product_Pair_int_int @ R @ S ) ) )
         => ( ( times_times_int @ P4 @ S )
            = ( times_times_int @ R @ Q2 ) ) ) ) ) ).

% normalize_crossproduct
thf(fact_3893_gbinomial__minus,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ ( uminus_uminus_rat @ A ) @ K )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K ) @ ( gbinomial_rat @ ( minus_minus_rat @ ( plus_plus_rat @ A @ ( semiri681578069525770553at_rat @ K ) ) @ one_one_rat ) @ K ) ) ) ).

% gbinomial_minus
thf(fact_3894_gbinomial__reduce__nat,axiom,
    ! [K: nat,A: rat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( gbinomial_rat @ A @ K )
        = ( plus_plus_rat @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ ( minus_minus_nat @ K @ one_one_nat ) ) @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ K ) ) ) ) ).

% gbinomial_reduce_nat
thf(fact_3895_gbinomial__pochhammer,axiom,
    ( gbinomial_rat
    = ( ^ [A4: rat,K3: nat] : ( divide_divide_rat @ ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K3 ) @ ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ A4 ) @ K3 ) ) @ ( semiri773545260158071498ct_rat @ K3 ) ) ) ) ).

% gbinomial_pochhammer
thf(fact_3896_gbinomial__pochhammer_H,axiom,
    ( gbinomial_rat
    = ( ^ [A4: rat,K3: nat] : ( divide_divide_rat @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ ( minus_minus_rat @ A4 @ ( semiri681578069525770553at_rat @ K3 ) ) @ one_one_rat ) @ K3 ) @ ( semiri773545260158071498ct_rat @ K3 ) ) ) ) ).

% gbinomial_pochhammer'
thf(fact_3897_gbinomial__absorption_H,axiom,
    ! [K: nat,A: rat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( gbinomial_rat @ A @ K )
        = ( times_times_rat @ ( divide_divide_rat @ A @ ( semiri681578069525770553at_rat @ K ) ) @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ ( minus_minus_nat @ K @ one_one_nat ) ) ) ) ) ).

% gbinomial_absorption'
thf(fact_3898_inf__period_I4_J,axiom,
    ! [D: int,D4: int,T: int] :
      ( ( dvd_dvd_int @ D @ D4 )
     => ! [X6: int,K4: int] :
          ( ( ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ X6 @ T ) ) )
          = ( ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ ( minus_minus_int @ X6 @ ( times_times_int @ K4 @ D4 ) ) @ T ) ) ) ) ) ).

% inf_period(4)
thf(fact_3899_inf__period_I4_J,axiom,
    ! [D: code_integer,D4: code_integer,T: code_integer] :
      ( ( dvd_dvd_Code_integer @ D @ D4 )
     => ! [X6: code_integer,K4: code_integer] :
          ( ( ~ ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ X6 @ T ) ) )
          = ( ~ ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ X6 @ ( times_3573771949741848930nteger @ K4 @ D4 ) ) @ T ) ) ) ) ) ).

% inf_period(4)
thf(fact_3900_inf__period_I4_J,axiom,
    ! [D: rat,D4: rat,T: rat] :
      ( ( dvd_dvd_rat @ D @ D4 )
     => ! [X6: rat,K4: rat] :
          ( ( ~ ( dvd_dvd_rat @ D @ ( plus_plus_rat @ X6 @ T ) ) )
          = ( ~ ( dvd_dvd_rat @ D @ ( plus_plus_rat @ ( minus_minus_rat @ X6 @ ( times_times_rat @ K4 @ D4 ) ) @ T ) ) ) ) ) ).

% inf_period(4)
thf(fact_3901_inf__period_I3_J,axiom,
    ! [D: int,D4: int,T: int] :
      ( ( dvd_dvd_int @ D @ D4 )
     => ! [X6: int,K4: int] :
          ( ( dvd_dvd_int @ D @ ( plus_plus_int @ X6 @ T ) )
          = ( dvd_dvd_int @ D @ ( plus_plus_int @ ( minus_minus_int @ X6 @ ( times_times_int @ K4 @ D4 ) ) @ T ) ) ) ) ).

% inf_period(3)
thf(fact_3902_inf__period_I3_J,axiom,
    ! [D: code_integer,D4: code_integer,T: code_integer] :
      ( ( dvd_dvd_Code_integer @ D @ D4 )
     => ! [X6: code_integer,K4: code_integer] :
          ( ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ X6 @ T ) )
          = ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ X6 @ ( times_3573771949741848930nteger @ K4 @ D4 ) ) @ T ) ) ) ) ).

% inf_period(3)
thf(fact_3903_inf__period_I3_J,axiom,
    ! [D: rat,D4: rat,T: rat] :
      ( ( dvd_dvd_rat @ D @ D4 )
     => ! [X6: rat,K4: rat] :
          ( ( dvd_dvd_rat @ D @ ( plus_plus_rat @ X6 @ T ) )
          = ( dvd_dvd_rat @ D @ ( plus_plus_rat @ ( minus_minus_rat @ X6 @ ( times_times_rat @ K4 @ D4 ) ) @ T ) ) ) ) ).

% inf_period(3)
thf(fact_3904_unity__coeff__ex,axiom,
    ! [P: code_natural > $o,L: code_natural] :
      ( ( ? [X4: code_natural] : ( P @ ( times_2397367101498566445atural @ L @ X4 ) ) )
      = ( ? [X4: code_natural] :
            ( ( dvd_dvd_Code_natural @ L @ ( plus_p4538020629002901425atural @ X4 @ zero_z2226904508553997617atural ) )
            & ( P @ X4 ) ) ) ) ).

% unity_coeff_ex
thf(fact_3905_unity__coeff__ex,axiom,
    ! [P: nat > $o,L: nat] :
      ( ( ? [X4: nat] : ( P @ ( times_times_nat @ L @ X4 ) ) )
      = ( ? [X4: nat] :
            ( ( dvd_dvd_nat @ L @ ( plus_plus_nat @ X4 @ zero_zero_nat ) )
            & ( P @ X4 ) ) ) ) ).

% unity_coeff_ex
thf(fact_3906_unity__coeff__ex,axiom,
    ! [P: int > $o,L: int] :
      ( ( ? [X4: int] : ( P @ ( times_times_int @ L @ X4 ) ) )
      = ( ? [X4: int] :
            ( ( dvd_dvd_int @ L @ ( plus_plus_int @ X4 @ zero_zero_int ) )
            & ( P @ X4 ) ) ) ) ).

% unity_coeff_ex
thf(fact_3907_unity__coeff__ex,axiom,
    ! [P: code_integer > $o,L: code_integer] :
      ( ( ? [X4: code_integer] : ( P @ ( times_3573771949741848930nteger @ L @ X4 ) ) )
      = ( ? [X4: code_integer] :
            ( ( dvd_dvd_Code_integer @ L @ ( plus_p5714425477246183910nteger @ X4 @ zero_z3403309356797280102nteger ) )
            & ( P @ X4 ) ) ) ) ).

% unity_coeff_ex
thf(fact_3908_unity__coeff__ex,axiom,
    ! [P: rat > $o,L: rat] :
      ( ( ? [X4: rat] : ( P @ ( times_times_rat @ L @ X4 ) ) )
      = ( ? [X4: rat] :
            ( ( dvd_dvd_rat @ L @ ( plus_plus_rat @ X4 @ zero_zero_rat ) )
            & ( P @ X4 ) ) ) ) ).

% unity_coeff_ex
thf(fact_3909_minf_I10_J,axiom,
    ! [D: code_integer,S: code_integer] :
    ? [Z6: code_integer] :
    ! [X6: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X6 @ Z6 )
     => ( ( ~ ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ X6 @ S ) ) )
        = ( ~ ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ X6 @ S ) ) ) ) ) ).

% minf(10)
thf(fact_3910_minf_I10_J,axiom,
    ! [D: rat,S: rat] :
    ? [Z6: rat] :
    ! [X6: rat] :
      ( ( ord_less_rat @ X6 @ Z6 )
     => ( ( ~ ( dvd_dvd_rat @ D @ ( plus_plus_rat @ X6 @ S ) ) )
        = ( ~ ( dvd_dvd_rat @ D @ ( plus_plus_rat @ X6 @ S ) ) ) ) ) ).

% minf(10)
thf(fact_3911_minf_I10_J,axiom,
    ! [D: nat,S: nat] :
    ? [Z6: nat] :
    ! [X6: nat] :
      ( ( ord_less_nat @ X6 @ Z6 )
     => ( ( ~ ( dvd_dvd_nat @ D @ ( plus_plus_nat @ X6 @ S ) ) )
        = ( ~ ( dvd_dvd_nat @ D @ ( plus_plus_nat @ X6 @ S ) ) ) ) ) ).

% minf(10)
thf(fact_3912_minf_I10_J,axiom,
    ! [D: int,S: int] :
    ? [Z6: int] :
    ! [X6: int] :
      ( ( ord_less_int @ X6 @ Z6 )
     => ( ( ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ X6 @ S ) ) )
        = ( ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ X6 @ S ) ) ) ) ) ).

% minf(10)
thf(fact_3913_minf_I9_J,axiom,
    ! [D: code_integer,S: code_integer] :
    ? [Z6: code_integer] :
    ! [X6: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X6 @ Z6 )
     => ( ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ X6 @ S ) )
        = ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ X6 @ S ) ) ) ) ).

% minf(9)
thf(fact_3914_minf_I9_J,axiom,
    ! [D: rat,S: rat] :
    ? [Z6: rat] :
    ! [X6: rat] :
      ( ( ord_less_rat @ X6 @ Z6 )
     => ( ( dvd_dvd_rat @ D @ ( plus_plus_rat @ X6 @ S ) )
        = ( dvd_dvd_rat @ D @ ( plus_plus_rat @ X6 @ S ) ) ) ) ).

% minf(9)
thf(fact_3915_minf_I9_J,axiom,
    ! [D: nat,S: nat] :
    ? [Z6: nat] :
    ! [X6: nat] :
      ( ( ord_less_nat @ X6 @ Z6 )
     => ( ( dvd_dvd_nat @ D @ ( plus_plus_nat @ X6 @ S ) )
        = ( dvd_dvd_nat @ D @ ( plus_plus_nat @ X6 @ S ) ) ) ) ).

% minf(9)
thf(fact_3916_minf_I9_J,axiom,
    ! [D: int,S: int] :
    ? [Z6: int] :
    ! [X6: int] :
      ( ( ord_less_int @ X6 @ Z6 )
     => ( ( dvd_dvd_int @ D @ ( plus_plus_int @ X6 @ S ) )
        = ( dvd_dvd_int @ D @ ( plus_plus_int @ X6 @ S ) ) ) ) ).

% minf(9)
thf(fact_3917_pinf_I10_J,axiom,
    ! [D: code_integer,S: code_integer] :
    ? [Z6: code_integer] :
    ! [X6: code_integer] :
      ( ( ord_le6747313008572928689nteger @ Z6 @ X6 )
     => ( ( ~ ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ X6 @ S ) ) )
        = ( ~ ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ X6 @ S ) ) ) ) ) ).

% pinf(10)
thf(fact_3918_pinf_I10_J,axiom,
    ! [D: rat,S: rat] :
    ? [Z6: rat] :
    ! [X6: rat] :
      ( ( ord_less_rat @ Z6 @ X6 )
     => ( ( ~ ( dvd_dvd_rat @ D @ ( plus_plus_rat @ X6 @ S ) ) )
        = ( ~ ( dvd_dvd_rat @ D @ ( plus_plus_rat @ X6 @ S ) ) ) ) ) ).

% pinf(10)
thf(fact_3919_pinf_I10_J,axiom,
    ! [D: nat,S: nat] :
    ? [Z6: nat] :
    ! [X6: nat] :
      ( ( ord_less_nat @ Z6 @ X6 )
     => ( ( ~ ( dvd_dvd_nat @ D @ ( plus_plus_nat @ X6 @ S ) ) )
        = ( ~ ( dvd_dvd_nat @ D @ ( plus_plus_nat @ X6 @ S ) ) ) ) ) ).

% pinf(10)
thf(fact_3920_pinf_I10_J,axiom,
    ! [D: int,S: int] :
    ? [Z6: int] :
    ! [X6: int] :
      ( ( ord_less_int @ Z6 @ X6 )
     => ( ( ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ X6 @ S ) ) )
        = ( ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ X6 @ S ) ) ) ) ) ).

% pinf(10)
thf(fact_3921_pinf_I9_J,axiom,
    ! [D: code_integer,S: code_integer] :
    ? [Z6: code_integer] :
    ! [X6: code_integer] :
      ( ( ord_le6747313008572928689nteger @ Z6 @ X6 )
     => ( ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ X6 @ S ) )
        = ( dvd_dvd_Code_integer @ D @ ( plus_p5714425477246183910nteger @ X6 @ S ) ) ) ) ).

% pinf(9)
thf(fact_3922_pinf_I9_J,axiom,
    ! [D: rat,S: rat] :
    ? [Z6: rat] :
    ! [X6: rat] :
      ( ( ord_less_rat @ Z6 @ X6 )
     => ( ( dvd_dvd_rat @ D @ ( plus_plus_rat @ X6 @ S ) )
        = ( dvd_dvd_rat @ D @ ( plus_plus_rat @ X6 @ S ) ) ) ) ).

% pinf(9)
thf(fact_3923_pinf_I9_J,axiom,
    ! [D: nat,S: nat] :
    ? [Z6: nat] :
    ! [X6: nat] :
      ( ( ord_less_nat @ Z6 @ X6 )
     => ( ( dvd_dvd_nat @ D @ ( plus_plus_nat @ X6 @ S ) )
        = ( dvd_dvd_nat @ D @ ( plus_plus_nat @ X6 @ S ) ) ) ) ).

% pinf(9)
thf(fact_3924_pinf_I9_J,axiom,
    ! [D: int,S: int] :
    ? [Z6: int] :
    ! [X6: int] :
      ( ( ord_less_int @ Z6 @ X6 )
     => ( ( dvd_dvd_int @ D @ ( plus_plus_int @ X6 @ S ) )
        = ( dvd_dvd_int @ D @ ( plus_plus_int @ X6 @ S ) ) ) ) ).

% pinf(9)
thf(fact_3925_less__set__def,axiom,
    ( ord_le3519150613208228973at_nat
    = ( ^ [A6: set_se7855581050983116737at_nat,B6: set_se7855581050983116737at_nat] :
          ( ord_le220952123948551344_nat_o
          @ ^ [X4: set_Pr1261947904930325089at_nat] : ( member2643936169264416010at_nat @ X4 @ A6 )
          @ ^ [X4: set_Pr1261947904930325089at_nat] : ( member2643936169264416010at_nat @ X4 @ B6 ) ) ) ) ).

% less_set_def
thf(fact_3926_less__set__def,axiom,
    ( ord_le1924305788584680229nt_int
    = ( ^ [A6: set_se6260736226359567993nt_int,B6: set_se6260736226359567993nt_int] :
          ( ord_le2688692977766382584_int_o
          @ ^ [X4: set_Pr958786334691620121nt_int] : ( member2340774599025711042nt_int @ X4 @ A6 )
          @ ^ [X4: set_Pr958786334691620121nt_int] : ( member2340774599025711042nt_int @ X4 @ B6 ) ) ) ) ).

% less_set_def
thf(fact_3927_less__set__def,axiom,
    ( ord_less_set_set_nat
    = ( ^ [A6: set_set_nat,B6: set_set_nat] :
          ( ord_less_set_nat_o
          @ ^ [X4: set_nat] : ( member_set_nat @ X4 @ A6 )
          @ ^ [X4: set_nat] : ( member_set_nat @ X4 @ B6 ) ) ) ) ).

% less_set_def
thf(fact_3928_less__set__def,axiom,
    ( ord_less_set_nat
    = ( ^ [A6: set_nat,B6: set_nat] :
          ( ord_less_nat_o
          @ ^ [X4: nat] : ( member_nat @ X4 @ A6 )
          @ ^ [X4: nat] : ( member_nat @ X4 @ B6 ) ) ) ) ).

% less_set_def
thf(fact_3929_less__set__def,axiom,
    ( ord_less_set_int
    = ( ^ [A6: set_int,B6: set_int] :
          ( ord_less_int_o
          @ ^ [X4: int] : ( member_int @ X4 @ A6 )
          @ ^ [X4: int] : ( member_int @ X4 @ B6 ) ) ) ) ).

% less_set_def
thf(fact_3930_triangle__Suc,axiom,
    ! [N: nat] :
      ( ( nat_triangle @ ( suc @ N ) )
      = ( plus_plus_nat @ ( nat_triangle @ N ) @ ( suc @ N ) ) ) ).

% triangle_Suc
thf(fact_3931_floor__divide__upper,axiom,
    ! [Q2: rat,P4: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Q2 )
     => ( ord_less_rat @ P4 @ ( times_times_rat @ ( plus_plus_rat @ ( ring_1_of_int_rat @ ( archim3151403230148437115or_rat @ ( divide_divide_rat @ P4 @ Q2 ) ) ) @ one_one_rat ) @ Q2 ) ) ) ).

% floor_divide_upper
thf(fact_3932_verit__le__mono__div__int,axiom,
    ! [A3: int,B3: int,N: int] :
      ( ( ord_less_int @ A3 @ B3 )
     => ( ( ord_less_int @ zero_zero_int @ N )
       => ( ord_less_eq_int
          @ ( plus_plus_int @ ( divide_divide_int @ A3 @ N )
            @ ( if_int
              @ ( ( modulo_modulo_int @ B3 @ N )
                = zero_zero_int )
              @ one_one_int
              @ zero_zero_int ) )
          @ ( divide_divide_int @ B3 @ N ) ) ) ) ).

% verit_le_mono_div_int
thf(fact_3933_verit__le__mono__div,axiom,
    ! [A3: nat,B3: nat,N: nat] :
      ( ( ord_less_nat @ A3 @ B3 )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_nat
          @ ( plus_plus_nat @ ( divide_divide_nat @ A3 @ N )
            @ ( if_nat
              @ ( ( modulo_modulo_nat @ B3 @ N )
                = zero_zero_nat )
              @ one_one_nat
              @ zero_zero_nat ) )
          @ ( divide_divide_nat @ B3 @ N ) ) ) ) ).

% verit_le_mono_div
thf(fact_3934_divide__le__eq__numeral_I2_J,axiom,
    ! [B: rat,C: rat,W: num] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ B @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ zero_zero_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) ) ) ) ) ) ) ).

% divide_le_eq_numeral(2)
thf(fact_3935_le__divide__eq__numeral_I2_J,axiom,
    ! [W: num,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ B @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ zero_zero_rat ) ) ) ) ) ) ).

% le_divide_eq_numeral(2)
thf(fact_3936_floor__add,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ( ord_less_rat @ ( plus_plus_rat @ ( archimedean_frac_rat @ X ) @ ( archimedean_frac_rat @ Y3 ) ) @ one_one_rat )
       => ( ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X @ Y3 ) )
          = ( plus_plus_int @ ( archim3151403230148437115or_rat @ X ) @ ( archim3151403230148437115or_rat @ Y3 ) ) ) )
      & ( ~ ( ord_less_rat @ ( plus_plus_rat @ ( archimedean_frac_rat @ X ) @ ( archimedean_frac_rat @ Y3 ) ) @ one_one_rat )
       => ( ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X @ Y3 ) )
          = ( plus_plus_int @ ( plus_plus_int @ ( archim3151403230148437115or_rat @ X ) @ ( archim3151403230148437115or_rat @ Y3 ) ) @ one_one_int ) ) ) ) ).

% floor_add
thf(fact_3937_int__eq__iff__numeral,axiom,
    ! [M: nat,V: num] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = ( numeral_numeral_int @ V ) )
      = ( M
        = ( numeral_numeral_nat @ V ) ) ) ).

% int_eq_iff_numeral
thf(fact_3938_nat__numeral,axiom,
    ! [K: num] :
      ( ( nat2 @ ( numeral_numeral_int @ K ) )
      = ( numeral_numeral_nat @ K ) ) ).

% nat_numeral
thf(fact_3939_power__zero__numeral,axiom,
    ! [K: num] :
      ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ ( numeral_numeral_nat @ K ) )
      = zero_z3403309356797280102nteger ) ).

% power_zero_numeral
thf(fact_3940_power__zero__numeral,axiom,
    ! [K: num] :
      ( ( power_power_rat @ zero_zero_rat @ ( numeral_numeral_nat @ K ) )
      = zero_zero_rat ) ).

% power_zero_numeral
thf(fact_3941_power__zero__numeral,axiom,
    ! [K: num] :
      ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ ( numeral_numeral_nat @ K ) )
      = zero_z2226904508553997617atural ) ).

% power_zero_numeral
thf(fact_3942_power__zero__numeral,axiom,
    ! [K: num] :
      ( ( power_power_nat @ zero_zero_nat @ ( numeral_numeral_nat @ K ) )
      = zero_zero_nat ) ).

% power_zero_numeral
thf(fact_3943_power__zero__numeral,axiom,
    ! [K: num] :
      ( ( power_power_int @ zero_zero_int @ ( numeral_numeral_nat @ K ) )
      = zero_zero_int ) ).

% power_zero_numeral
thf(fact_3944_bits__mod__0,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% bits_mod_0
thf(fact_3945_bits__mod__0,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% bits_mod_0
thf(fact_3946_bits__mod__0,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% bits_mod_0
thf(fact_3947_bits__mod__0,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% bits_mod_0
thf(fact_3948_mod__0,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% mod_0
thf(fact_3949_mod__0,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% mod_0
thf(fact_3950_mod__0,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% mod_0
thf(fact_3951_mod__0,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% mod_0
thf(fact_3952_mod__by__0,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% mod_by_0
thf(fact_3953_mod__by__0,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ A @ zero_zero_int )
      = A ) ).

% mod_by_0
thf(fact_3954_mod__by__0,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ A @ zero_zero_nat )
      = A ) ).

% mod_by_0
thf(fact_3955_mod__by__0,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% mod_by_0
thf(fact_3956_mod__self,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ A @ A )
      = zero_z2226904508553997617atural ) ).

% mod_self
thf(fact_3957_mod__self,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ A @ A )
      = zero_zero_int ) ).

% mod_self
thf(fact_3958_mod__self,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ A @ A )
      = zero_zero_nat ) ).

% mod_self
thf(fact_3959_mod__self,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ A @ A )
      = zero_z3403309356797280102nteger ) ).

% mod_self
thf(fact_3960_mod__add__self2,axiom,
    ! [A: int,B: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ A @ B ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_add_self2
thf(fact_3961_mod__add__self2,axiom,
    ! [A: nat,B: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_add_self2
thf(fact_3962_mod__add__self2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_add_self2
thf(fact_3963_mod__add__self1,axiom,
    ! [B: int,A: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ B @ A ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_add_self1
thf(fact_3964_mod__add__self1,axiom,
    ! [B: nat,A: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_add_self1
thf(fact_3965_mod__add__self1,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ B @ A ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_add_self1
thf(fact_3966_of__int__numeral,axiom,
    ! [K: num] :
      ( ( ring_1_of_int_int @ ( numeral_numeral_int @ K ) )
      = ( numeral_numeral_int @ K ) ) ).

% of_int_numeral
thf(fact_3967_of__int__numeral,axiom,
    ! [K: num] :
      ( ( ring_18347121197199848620nteger @ ( numeral_numeral_int @ K ) )
      = ( numera6620942414471956472nteger @ K ) ) ).

% of_int_numeral
thf(fact_3968_of__int__numeral,axiom,
    ! [K: num] :
      ( ( ring_1_of_int_rat @ ( numeral_numeral_int @ K ) )
      = ( numeral_numeral_rat @ K ) ) ).

% of_int_numeral
thf(fact_3969_of__int__eq__numeral__iff,axiom,
    ! [Z: int,N: num] :
      ( ( ( ring_1_of_int_int @ Z )
        = ( numeral_numeral_int @ N ) )
      = ( Z
        = ( numeral_numeral_int @ N ) ) ) ).

% of_int_eq_numeral_iff
thf(fact_3970_of__int__eq__numeral__iff,axiom,
    ! [Z: int,N: num] :
      ( ( ( ring_18347121197199848620nteger @ Z )
        = ( numera6620942414471956472nteger @ N ) )
      = ( Z
        = ( numeral_numeral_int @ N ) ) ) ).

% of_int_eq_numeral_iff
thf(fact_3971_of__int__eq__numeral__iff,axiom,
    ! [Z: int,N: num] :
      ( ( ( ring_1_of_int_rat @ Z )
        = ( numeral_numeral_rat @ N ) )
      = ( Z
        = ( numeral_numeral_int @ N ) ) ) ).

% of_int_eq_numeral_iff
thf(fact_3972_triangle__0,axiom,
    ( ( nat_triangle @ zero_zero_nat )
    = zero_zero_nat ) ).

% triangle_0
thf(fact_3973_distrib__left__numeral,axiom,
    ! [V: num,B: int,C: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ V ) @ ( plus_plus_int @ B @ C ) )
      = ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ V ) @ B ) @ ( times_times_int @ ( numeral_numeral_int @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_3974_distrib__left__numeral,axiom,
    ! [V: num,B: nat,C: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ V ) @ ( plus_plus_nat @ B @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ V ) @ B ) @ ( times_times_nat @ ( numeral_numeral_nat @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_3975_distrib__left__numeral,axiom,
    ! [V: num,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ V ) @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ V ) @ B ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_3976_distrib__left__numeral,axiom,
    ! [V: num,B: rat,C: rat] :
      ( ( times_times_rat @ ( numeral_numeral_rat @ V ) @ ( plus_plus_rat @ B @ C ) )
      = ( plus_plus_rat @ ( times_times_rat @ ( numeral_numeral_rat @ V ) @ B ) @ ( times_times_rat @ ( numeral_numeral_rat @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_3977_distrib__right__numeral,axiom,
    ! [A: int,B: int,V: num] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ ( numeral_numeral_int @ V ) )
      = ( plus_plus_int @ ( times_times_int @ A @ ( numeral_numeral_int @ V ) ) @ ( times_times_int @ B @ ( numeral_numeral_int @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_3978_distrib__right__numeral,axiom,
    ! [A: nat,B: nat,V: num] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ ( numeral_numeral_nat @ V ) )
      = ( plus_plus_nat @ ( times_times_nat @ A @ ( numeral_numeral_nat @ V ) ) @ ( times_times_nat @ B @ ( numeral_numeral_nat @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_3979_distrib__right__numeral,axiom,
    ! [A: code_integer,B: code_integer,V: num] :
      ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ ( numera6620942414471956472nteger @ V ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ ( numera6620942414471956472nteger @ V ) ) @ ( times_3573771949741848930nteger @ B @ ( numera6620942414471956472nteger @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_3980_distrib__right__numeral,axiom,
    ! [A: rat,B: rat,V: num] :
      ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ ( numeral_numeral_rat @ V ) )
      = ( plus_plus_rat @ ( times_times_rat @ A @ ( numeral_numeral_rat @ V ) ) @ ( times_times_rat @ B @ ( numeral_numeral_rat @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_3981_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( plus_plus_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_3982_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( uminus1351360451143612070nteger @ ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_3983_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( uminus_uminus_rat @ ( plus_plus_rat @ ( numeral_numeral_rat @ M ) @ ( numeral_numeral_rat @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_3984_mod__mult__self2__is__0,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( modulo8411746178871703098atural @ ( times_2397367101498566445atural @ A @ B ) @ B )
      = zero_z2226904508553997617atural ) ).

% mod_mult_self2_is_0
thf(fact_3985_mod__mult__self2__is__0,axiom,
    ! [A: int,B: int] :
      ( ( modulo_modulo_int @ ( times_times_int @ A @ B ) @ B )
      = zero_zero_int ) ).

% mod_mult_self2_is_0
thf(fact_3986_mod__mult__self2__is__0,axiom,
    ! [A: nat,B: nat] :
      ( ( modulo_modulo_nat @ ( times_times_nat @ A @ B ) @ B )
      = zero_zero_nat ) ).

% mod_mult_self2_is_0
thf(fact_3987_mod__mult__self2__is__0,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( modulo364778990260209775nteger @ ( times_3573771949741848930nteger @ A @ B ) @ B )
      = zero_z3403309356797280102nteger ) ).

% mod_mult_self2_is_0
thf(fact_3988_mod__mult__self1__is__0,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( modulo8411746178871703098atural @ ( times_2397367101498566445atural @ B @ A ) @ B )
      = zero_z2226904508553997617atural ) ).

% mod_mult_self1_is_0
thf(fact_3989_mod__mult__self1__is__0,axiom,
    ! [B: int,A: int] :
      ( ( modulo_modulo_int @ ( times_times_int @ B @ A ) @ B )
      = zero_zero_int ) ).

% mod_mult_self1_is_0
thf(fact_3990_mod__mult__self1__is__0,axiom,
    ! [B: nat,A: nat] :
      ( ( modulo_modulo_nat @ ( times_times_nat @ B @ A ) @ B )
      = zero_zero_nat ) ).

% mod_mult_self1_is_0
thf(fact_3991_mod__mult__self1__is__0,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( modulo364778990260209775nteger @ ( times_3573771949741848930nteger @ B @ A ) @ B )
      = zero_z3403309356797280102nteger ) ).

% mod_mult_self1_is_0
thf(fact_3992_bits__mod__by__1,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ A @ one_one_Code_natural )
      = zero_z2226904508553997617atural ) ).

% bits_mod_by_1
thf(fact_3993_bits__mod__by__1,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ A @ one_one_int )
      = zero_zero_int ) ).

% bits_mod_by_1
thf(fact_3994_bits__mod__by__1,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ A @ one_one_nat )
      = zero_zero_nat ) ).

% bits_mod_by_1
thf(fact_3995_bits__mod__by__1,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ A @ one_one_Code_integer )
      = zero_z3403309356797280102nteger ) ).

% bits_mod_by_1
thf(fact_3996_mod__by__1,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ A @ one_one_Code_natural )
      = zero_z2226904508553997617atural ) ).

% mod_by_1
thf(fact_3997_mod__by__1,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ A @ one_one_int )
      = zero_zero_int ) ).

% mod_by_1
thf(fact_3998_mod__by__1,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ A @ one_one_nat )
      = zero_zero_nat ) ).

% mod_by_1
thf(fact_3999_mod__by__1,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ A @ one_one_Code_integer )
      = zero_z3403309356797280102nteger ) ).

% mod_by_1
thf(fact_4000_mod__mult__self4,axiom,
    ! [B: int,C: int,A: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ ( times_times_int @ B @ C ) @ A ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_mult_self4
thf(fact_4001_mod__mult__self4,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ ( times_times_nat @ B @ C ) @ A ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_mult_self4
thf(fact_4002_mod__mult__self4,axiom,
    ! [B: code_integer,C: code_integer,A: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ C ) @ A ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_mult_self4
thf(fact_4003_mod__mult__self3,axiom,
    ! [C: int,B: int,A: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ ( times_times_int @ C @ B ) @ A ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_mult_self3
thf(fact_4004_mod__mult__self3,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ ( times_times_nat @ C @ B ) @ A ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_mult_self3
thf(fact_4005_mod__mult__self3,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ C @ B ) @ A ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_mult_self3
thf(fact_4006_mod__mult__self2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ A @ ( times_times_int @ B @ C ) ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_mult_self2
thf(fact_4007_mod__mult__self2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ A @ ( times_times_nat @ B @ C ) ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_mult_self2
thf(fact_4008_mod__mult__self2,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_mult_self2
thf(fact_4009_mod__mult__self1,axiom,
    ! [A: int,C: int,B: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ A @ ( times_times_int @ C @ B ) ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_mult_self1
thf(fact_4010_mod__mult__self1,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ A @ ( times_times_nat @ C @ B ) ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_mult_self1
thf(fact_4011_mod__mult__self1,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ C @ B ) ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_mult_self1
thf(fact_4012_dvd__imp__mod__0,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( dvd_dvd_Code_natural @ A @ B )
     => ( ( modulo8411746178871703098atural @ B @ A )
        = zero_z2226904508553997617atural ) ) ).

% dvd_imp_mod_0
thf(fact_4013_dvd__imp__mod__0,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( modulo_modulo_int @ B @ A )
        = zero_zero_int ) ) ).

% dvd_imp_mod_0
thf(fact_4014_dvd__imp__mod__0,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( modulo_modulo_nat @ B @ A )
        = zero_zero_nat ) ) ).

% dvd_imp_mod_0
thf(fact_4015_dvd__imp__mod__0,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ A @ B )
     => ( ( modulo364778990260209775nteger @ B @ A )
        = zero_z3403309356797280102nteger ) ) ).

% dvd_imp_mod_0
thf(fact_4016_bits__mod__div__trivial,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( divide5121882707175180666atural @ ( modulo8411746178871703098atural @ A @ B ) @ B )
      = zero_z2226904508553997617atural ) ).

% bits_mod_div_trivial
thf(fact_4017_bits__mod__div__trivial,axiom,
    ! [A: int,B: int] :
      ( ( divide_divide_int @ ( modulo_modulo_int @ A @ B ) @ B )
      = zero_zero_int ) ).

% bits_mod_div_trivial
thf(fact_4018_bits__mod__div__trivial,axiom,
    ! [A: nat,B: nat] :
      ( ( divide_divide_nat @ ( modulo_modulo_nat @ A @ B ) @ B )
      = zero_zero_nat ) ).

% bits_mod_div_trivial
thf(fact_4019_bits__mod__div__trivial,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( divide6298287555418463151nteger @ ( modulo364778990260209775nteger @ A @ B ) @ B )
      = zero_z3403309356797280102nteger ) ).

% bits_mod_div_trivial
thf(fact_4020_mod__div__trivial,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( divide5121882707175180666atural @ ( modulo8411746178871703098atural @ A @ B ) @ B )
      = zero_z2226904508553997617atural ) ).

% mod_div_trivial
thf(fact_4021_mod__div__trivial,axiom,
    ! [A: int,B: int] :
      ( ( divide_divide_int @ ( modulo_modulo_int @ A @ B ) @ B )
      = zero_zero_int ) ).

% mod_div_trivial
thf(fact_4022_mod__div__trivial,axiom,
    ! [A: nat,B: nat] :
      ( ( divide_divide_nat @ ( modulo_modulo_nat @ A @ B ) @ B )
      = zero_zero_nat ) ).

% mod_div_trivial
thf(fact_4023_mod__div__trivial,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( divide6298287555418463151nteger @ ( modulo364778990260209775nteger @ A @ B ) @ B )
      = zero_z3403309356797280102nteger ) ).

% mod_div_trivial
thf(fact_4024_mod__by__Suc__0,axiom,
    ! [M: nat] :
      ( ( modulo_modulo_nat @ M @ ( suc @ zero_zero_nat ) )
      = zero_zero_nat ) ).

% mod_by_Suc_0
thf(fact_4025_floor__zero,axiom,
    ( ( archim3151403230148437115or_rat @ zero_zero_rat )
    = zero_zero_int ) ).

% floor_zero
thf(fact_4026_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_4027_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_4028_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ N ) )
      = ( numera6620942414471956472nteger @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_4029_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ M ) @ ( numeral_numeral_rat @ N ) )
      = ( numeral_numeral_rat @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_4030_add__numeral__left,axiom,
    ! [V: num,W: num,Z: int] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ V ) @ ( plus_plus_int @ ( numeral_numeral_int @ W ) @ Z ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_4031_add__numeral__left,axiom,
    ! [V: num,W: num,Z: nat] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ ( plus_plus_nat @ ( numeral_numeral_nat @ W ) @ Z ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_4032_add__numeral__left,axiom,
    ! [V: num,W: num,Z: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ V ) @ ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ W ) @ Z ) )
      = ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_4033_add__numeral__left,axiom,
    ! [V: num,W: num,Z: rat] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ V ) @ ( plus_plus_rat @ ( numeral_numeral_rat @ W ) @ Z ) )
      = ( plus_plus_rat @ ( numeral_numeral_rat @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_4034_nat__neg__numeral,axiom,
    ! [K: num] :
      ( ( nat2 @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = zero_zero_nat ) ).

% nat_neg_numeral
thf(fact_4035_floor__one,axiom,
    ( ( archim3151403230148437115or_rat @ one_one_rat )
    = one_one_int ) ).

% floor_one
thf(fact_4036_diff__nat__numeral,axiom,
    ! [V: num,V3: num] :
      ( ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ ( numeral_numeral_nat @ V3 ) )
      = ( nat2 @ ( minus_minus_int @ ( numeral_numeral_int @ V ) @ ( numeral_numeral_int @ V3 ) ) ) ) ).

% diff_nat_numeral
thf(fact_4037_nat__eq__numeral__power__cancel__iff,axiom,
    ! [Y3: int,X: num,N: nat] :
      ( ( ( nat2 @ Y3 )
        = ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N ) )
      = ( Y3
        = ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% nat_eq_numeral_power_cancel_iff
thf(fact_4038_numeral__power__eq__nat__cancel__iff,axiom,
    ! [X: num,N: nat,Y3: int] :
      ( ( ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N )
        = ( nat2 @ Y3 ) )
      = ( ( power_power_int @ ( numeral_numeral_int @ X ) @ N )
        = Y3 ) ) ).

% numeral_power_eq_nat_cancel_iff
thf(fact_4039_divide__eq__eq__numeral1_I1_J,axiom,
    ! [B: rat,W: num,A: rat] :
      ( ( ( divide_divide_rat @ B @ ( numeral_numeral_rat @ W ) )
        = A )
      = ( ( ( ( numeral_numeral_rat @ W )
           != zero_zero_rat )
         => ( B
            = ( times_times_rat @ A @ ( numeral_numeral_rat @ W ) ) ) )
        & ( ( ( numeral_numeral_rat @ W )
            = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% divide_eq_eq_numeral1(1)
thf(fact_4040_eq__divide__eq__numeral1_I1_J,axiom,
    ! [A: rat,B: rat,W: num] :
      ( ( A
        = ( divide_divide_rat @ B @ ( numeral_numeral_rat @ W ) ) )
      = ( ( ( ( numeral_numeral_rat @ W )
           != zero_zero_rat )
         => ( ( times_times_rat @ A @ ( numeral_numeral_rat @ W ) )
            = B ) )
        & ( ( ( numeral_numeral_rat @ W )
            = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% eq_divide_eq_numeral1(1)
thf(fact_4041_mod__minus1__right,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ A @ ( uminus_uminus_int @ one_one_int ) )
      = zero_zero_int ) ).

% mod_minus1_right
thf(fact_4042_mod__minus1__right,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ A @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = zero_z3403309356797280102nteger ) ).

% mod_minus1_right
thf(fact_4043_of__int__le__numeral__iff,axiom,
    ! [Z: int,N: num] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ Z ) @ ( numera6620942414471956472nteger @ N ) )
      = ( ord_less_eq_int @ Z @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_le_numeral_iff
thf(fact_4044_of__int__le__numeral__iff,axiom,
    ! [Z: int,N: num] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z ) @ ( numeral_numeral_rat @ N ) )
      = ( ord_less_eq_int @ Z @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_le_numeral_iff
thf(fact_4045_of__int__le__numeral__iff,axiom,
    ! [Z: int,N: num] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ Z ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_eq_int @ Z @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_le_numeral_iff
thf(fact_4046_of__int__numeral__le__iff,axiom,
    ! [N: num,Z: int] :
      ( ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ N ) @ ( ring_18347121197199848620nteger @ Z ) )
      = ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ Z ) ) ).

% of_int_numeral_le_iff
thf(fact_4047_of__int__numeral__le__iff,axiom,
    ! [N: num,Z: int] :
      ( ( ord_less_eq_rat @ ( numeral_numeral_rat @ N ) @ ( ring_1_of_int_rat @ Z ) )
      = ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ Z ) ) ).

% of_int_numeral_le_iff
thf(fact_4048_of__int__numeral__le__iff,axiom,
    ! [N: num,Z: int] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ ( ring_1_of_int_int @ Z ) )
      = ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ Z ) ) ).

% of_int_numeral_le_iff
thf(fact_4049_of__int__numeral__less__iff,axiom,
    ! [N: num,Z: int] :
      ( ( ord_less_int @ ( numeral_numeral_int @ N ) @ ( ring_1_of_int_int @ Z ) )
      = ( ord_less_int @ ( numeral_numeral_int @ N ) @ Z ) ) ).

% of_int_numeral_less_iff
thf(fact_4050_of__int__numeral__less__iff,axiom,
    ! [N: num,Z: int] :
      ( ( ord_le6747313008572928689nteger @ ( numera6620942414471956472nteger @ N ) @ ( ring_18347121197199848620nteger @ Z ) )
      = ( ord_less_int @ ( numeral_numeral_int @ N ) @ Z ) ) ).

% of_int_numeral_less_iff
thf(fact_4051_of__int__numeral__less__iff,axiom,
    ! [N: num,Z: int] :
      ( ( ord_less_rat @ ( numeral_numeral_rat @ N ) @ ( ring_1_of_int_rat @ Z ) )
      = ( ord_less_int @ ( numeral_numeral_int @ N ) @ Z ) ) ).

% of_int_numeral_less_iff
thf(fact_4052_of__int__less__numeral__iff,axiom,
    ! [Z: int,N: num] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ Z ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_int @ Z @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_less_numeral_iff
thf(fact_4053_of__int__less__numeral__iff,axiom,
    ! [Z: int,N: num] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ Z ) @ ( numera6620942414471956472nteger @ N ) )
      = ( ord_less_int @ Z @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_less_numeral_iff
thf(fact_4054_of__int__less__numeral__iff,axiom,
    ! [Z: int,N: num] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ Z ) @ ( numeral_numeral_rat @ N ) )
      = ( ord_less_int @ Z @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_less_numeral_iff
thf(fact_4055_semiring__norm_I168_J,axiom,
    ! [V: num,W: num,Y3: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ W ) ) @ Y3 ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( plus_plus_num @ V @ W ) ) ) @ Y3 ) ) ).

% semiring_norm(168)
thf(fact_4056_semiring__norm_I168_J,axiom,
    ! [V: num,W: num,Y3: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ V ) ) @ ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ W ) ) @ Y3 ) )
      = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( plus_plus_num @ V @ W ) ) ) @ Y3 ) ) ).

% semiring_norm(168)
thf(fact_4057_semiring__norm_I168_J,axiom,
    ! [V: num,W: num,Y3: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ Y3 ) )
      = ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( plus_plus_num @ V @ W ) ) ) @ Y3 ) ) ).

% semiring_norm(168)
thf(fact_4058_Suc__mod__mult__self1,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ M @ ( times_times_nat @ K @ N ) ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self1
thf(fact_4059_Suc__mod__mult__self2,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ M @ ( times_times_nat @ N @ K ) ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self2
thf(fact_4060_Suc__mod__mult__self3,axiom,
    ! [K: nat,N: nat,M: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ ( times_times_nat @ K @ N ) @ M ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self3
thf(fact_4061_Suc__mod__mult__self4,axiom,
    ! [N: nat,K: nat,M: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ ( times_times_nat @ N @ K ) @ M ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self4
thf(fact_4062_ceiling__add__numeral,axiom,
    ! [X: rat,V: num] :
      ( ( archim2889992004027027881ng_rat @ ( plus_plus_rat @ X @ ( numeral_numeral_rat @ V ) ) )
      = ( plus_plus_int @ ( archim2889992004027027881ng_rat @ X ) @ ( numeral_numeral_int @ V ) ) ) ).

% ceiling_add_numeral
thf(fact_4063_numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,Y3: int] :
      ( ( ( power_power_int @ ( numeral_numeral_int @ X ) @ N )
        = ( ring_1_of_int_int @ Y3 ) )
      = ( ( power_power_int @ ( numeral_numeral_int @ X ) @ N )
        = Y3 ) ) ).

% numeral_power_eq_of_int_cancel_iff
thf(fact_4064_numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,Y3: int] :
      ( ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X ) @ N )
        = ( ring_18347121197199848620nteger @ Y3 ) )
      = ( ( power_power_int @ ( numeral_numeral_int @ X ) @ N )
        = Y3 ) ) ).

% numeral_power_eq_of_int_cancel_iff
thf(fact_4065_numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,Y3: int] :
      ( ( ( power_power_rat @ ( numeral_numeral_rat @ X ) @ N )
        = ( ring_1_of_int_rat @ Y3 ) )
      = ( ( power_power_int @ ( numeral_numeral_int @ X ) @ N )
        = Y3 ) ) ).

% numeral_power_eq_of_int_cancel_iff
thf(fact_4066_of__int__eq__numeral__power__cancel__iff,axiom,
    ! [Y3: int,X: num,N: nat] :
      ( ( ( ring_1_of_int_int @ Y3 )
        = ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) )
      = ( Y3
        = ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% of_int_eq_numeral_power_cancel_iff
thf(fact_4067_of__int__eq__numeral__power__cancel__iff,axiom,
    ! [Y3: int,X: num,N: nat] :
      ( ( ( ring_18347121197199848620nteger @ Y3 )
        = ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X ) @ N ) )
      = ( Y3
        = ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% of_int_eq_numeral_power_cancel_iff
thf(fact_4068_of__int__eq__numeral__power__cancel__iff,axiom,
    ! [Y3: int,X: num,N: nat] :
      ( ( ( ring_1_of_int_rat @ Y3 )
        = ( power_power_rat @ ( numeral_numeral_rat @ X ) @ N ) )
      = ( Y3
        = ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% of_int_eq_numeral_power_cancel_iff
thf(fact_4069_Suc__times__numeral__mod__eq,axiom,
    ! [K: num,N: nat] :
      ( ( ( numeral_numeral_nat @ K )
       != one_one_nat )
     => ( ( modulo_modulo_nat @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ K ) @ N ) ) @ ( numeral_numeral_nat @ K ) )
        = one_one_nat ) ) ).

% Suc_times_numeral_mod_eq
thf(fact_4070_floor__add2,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ( member_rat @ X @ ring_1_Ints_rat )
        | ( member_rat @ Y3 @ ring_1_Ints_rat ) )
     => ( ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X @ Y3 ) )
        = ( plus_plus_int @ ( archim3151403230148437115or_rat @ X ) @ ( archim3151403230148437115or_rat @ Y3 ) ) ) ) ).

% floor_add2
thf(fact_4071_Suc__0__mod__eq,axiom,
    ! [N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( zero_n2687167440665602831ol_nat
        @ ( N
         != ( suc @ zero_zero_nat ) ) ) ) ).

% Suc_0_mod_eq
thf(fact_4072_eq__divide__eq__numeral1_I2_J,axiom,
    ! [A: rat,B: rat,W: num] :
      ( ( A
        = ( divide_divide_rat @ B @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) ) )
      = ( ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) )
           != zero_zero_rat )
         => ( ( times_times_rat @ A @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) )
            = B ) )
        & ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) )
            = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% eq_divide_eq_numeral1(2)
thf(fact_4073_divide__eq__eq__numeral1_I2_J,axiom,
    ! [B: rat,W: num,A: rat] :
      ( ( ( divide_divide_rat @ B @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) )
        = A )
      = ( ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) )
           != zero_zero_rat )
         => ( B
            = ( times_times_rat @ A @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) ) ) )
        & ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) )
            = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% divide_eq_eq_numeral1(2)
thf(fact_4074_zero__le__floor,axiom,
    ! [X: rat] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( archim3151403230148437115or_rat @ X ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ X ) ) ).

% zero_le_floor
thf(fact_4075_floor__less__zero,axiom,
    ! [X: rat] :
      ( ( ord_less_int @ ( archim3151403230148437115or_rat @ X ) @ zero_zero_int )
      = ( ord_less_rat @ X @ zero_zero_rat ) ) ).

% floor_less_zero
thf(fact_4076_zero__less__floor,axiom,
    ! [X: rat] :
      ( ( ord_less_int @ zero_zero_int @ ( archim3151403230148437115or_rat @ X ) )
      = ( ord_less_eq_rat @ one_one_rat @ X ) ) ).

% zero_less_floor
thf(fact_4077_floor__le__zero,axiom,
    ! [X: rat] :
      ( ( ord_less_eq_int @ ( archim3151403230148437115or_rat @ X ) @ zero_zero_int )
      = ( ord_less_rat @ X @ one_one_rat ) ) ).

% floor_le_zero
thf(fact_4078_one__le__floor,axiom,
    ! [X: rat] :
      ( ( ord_less_eq_int @ one_one_int @ ( archim3151403230148437115or_rat @ X ) )
      = ( ord_less_eq_rat @ one_one_rat @ X ) ) ).

% one_le_floor
thf(fact_4079_floor__less__one,axiom,
    ! [X: rat] :
      ( ( ord_less_int @ ( archim3151403230148437115or_rat @ X ) @ one_one_int )
      = ( ord_less_rat @ X @ one_one_rat ) ) ).

% floor_less_one
thf(fact_4080_floor__diff__one,axiom,
    ! [X: rat] :
      ( ( archim3151403230148437115or_rat @ ( minus_minus_rat @ X @ one_one_rat ) )
      = ( minus_minus_int @ ( archim3151403230148437115or_rat @ X ) @ one_one_int ) ) ).

% floor_diff_one
thf(fact_4081_nat__numeral__diff__1,axiom,
    ! [V: num] :
      ( ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat )
      = ( nat2 @ ( minus_minus_int @ ( numeral_numeral_int @ V ) @ one_one_int ) ) ) ).

% nat_numeral_diff_1
thf(fact_4082_numeral__power__less__nat__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_nat @ ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N ) @ ( nat2 @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ A ) ) ).

% numeral_power_less_nat_cancel_iff
thf(fact_4083_nat__less__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_nat @ ( nat2 @ A ) @ ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% nat_less_numeral_power_cancel_iff
thf(fact_4084_nat__le__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_eq_nat @ ( nat2 @ A ) @ ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% nat_le_numeral_power_cancel_iff
thf(fact_4085_numeral__power__le__nat__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ X ) @ N ) @ ( nat2 @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ A ) ) ).

% numeral_power_le_nat_cancel_iff
thf(fact_4086_numeral__less__floor,axiom,
    ! [V: num,X: rat] :
      ( ( ord_less_int @ ( numeral_numeral_int @ V ) @ ( archim3151403230148437115or_rat @ X ) )
      = ( ord_less_eq_rat @ ( plus_plus_rat @ ( numeral_numeral_rat @ V ) @ one_one_rat ) @ X ) ) ).

% numeral_less_floor
thf(fact_4087_floor__le__numeral,axiom,
    ! [X: rat,V: num] :
      ( ( ord_less_eq_int @ ( archim3151403230148437115or_rat @ X ) @ ( numeral_numeral_int @ V ) )
      = ( ord_less_rat @ X @ ( plus_plus_rat @ ( numeral_numeral_rat @ V ) @ one_one_rat ) ) ) ).

% floor_le_numeral
thf(fact_4088_ceiling__less__numeral,axiom,
    ! [X: rat,V: num] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X ) @ ( numeral_numeral_int @ V ) )
      = ( ord_less_eq_rat @ X @ ( minus_minus_rat @ ( numeral_numeral_rat @ V ) @ one_one_rat ) ) ) ).

% ceiling_less_numeral
thf(fact_4089_numeral__le__ceiling,axiom,
    ! [V: num,X: rat] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ V ) @ ( archim2889992004027027881ng_rat @ X ) )
      = ( ord_less_rat @ ( minus_minus_rat @ ( numeral_numeral_rat @ V ) @ one_one_rat ) @ X ) ) ).

% numeral_le_ceiling
thf(fact_4090_of__int__le__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ A ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% of_int_le_numeral_power_cancel_iff
thf(fact_4091_of__int__le__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ A ) @ ( power_power_rat @ ( numeral_numeral_rat @ X ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% of_int_le_numeral_power_cancel_iff
thf(fact_4092_of__int__le__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ A ) @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% of_int_le_numeral_power_cancel_iff
thf(fact_4093_numeral__power__le__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X ) @ N ) @ ( ring_18347121197199848620nteger @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ A ) ) ).

% numeral_power_le_of_int_cancel_iff
thf(fact_4094_numeral__power__le__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ ( numeral_numeral_rat @ X ) @ N ) @ ( ring_1_of_int_rat @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ A ) ) ).

% numeral_power_le_of_int_cancel_iff
thf(fact_4095_numeral__power__le__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ ( ring_1_of_int_int @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ A ) ) ).

% numeral_power_le_of_int_cancel_iff
thf(fact_4096_of__int__less__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ A ) @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% of_int_less_numeral_power_cancel_iff
thf(fact_4097_of__int__less__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ A ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% of_int_less_numeral_power_cancel_iff
thf(fact_4098_of__int__less__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ A ) @ ( power_power_rat @ ( numeral_numeral_rat @ X ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) ) ) ).

% of_int_less_numeral_power_cancel_iff
thf(fact_4099_numeral__power__less__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ ( ring_1_of_int_int @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ A ) ) ).

% numeral_power_less_of_int_cancel_iff
thf(fact_4100_numeral__power__less__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X ) @ N ) @ ( ring_18347121197199848620nteger @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ A ) ) ).

% numeral_power_less_of_int_cancel_iff
thf(fact_4101_numeral__power__less__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_rat @ ( power_power_rat @ ( numeral_numeral_rat @ X ) @ N ) @ ( ring_1_of_int_rat @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X ) @ N ) @ A ) ) ).

% numeral_power_less_of_int_cancel_iff
thf(fact_4102_of__int__eq__neg__numeral__power__cancel__iff,axiom,
    ! [Y3: int,X: num,N: nat] :
      ( ( ( ring_1_of_int_int @ Y3 )
        = ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) )
      = ( Y3
        = ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) ) ) ).

% of_int_eq_neg_numeral_power_cancel_iff
thf(fact_4103_of__int__eq__neg__numeral__power__cancel__iff,axiom,
    ! [Y3: int,X: num,N: nat] :
      ( ( ( ring_18347121197199848620nteger @ Y3 )
        = ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X ) ) @ N ) )
      = ( Y3
        = ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) ) ) ).

% of_int_eq_neg_numeral_power_cancel_iff
thf(fact_4104_of__int__eq__neg__numeral__power__cancel__iff,axiom,
    ! [Y3: int,X: num,N: nat] :
      ( ( ( ring_1_of_int_rat @ Y3 )
        = ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X ) ) @ N ) )
      = ( Y3
        = ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) ) ) ).

% of_int_eq_neg_numeral_power_cancel_iff
thf(fact_4105_neg__numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,Y3: int] :
      ( ( ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N )
        = ( ring_1_of_int_int @ Y3 ) )
      = ( ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N )
        = Y3 ) ) ).

% neg_numeral_power_eq_of_int_cancel_iff
thf(fact_4106_neg__numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,Y3: int] :
      ( ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X ) ) @ N )
        = ( ring_18347121197199848620nteger @ Y3 ) )
      = ( ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N )
        = Y3 ) ) ).

% neg_numeral_power_eq_of_int_cancel_iff
thf(fact_4107_neg__numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,Y3: int] :
      ( ( ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X ) ) @ N )
        = ( ring_1_of_int_rat @ Y3 ) )
      = ( ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N )
        = Y3 ) ) ).

% neg_numeral_power_eq_of_int_cancel_iff
thf(fact_4108_neg__numeral__less__floor,axiom,
    ! [V: num,X: rat] :
      ( ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( archim3151403230148437115or_rat @ X ) )
      = ( ord_less_eq_rat @ ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ one_one_rat ) @ X ) ) ).

% neg_numeral_less_floor
thf(fact_4109_floor__le__neg__numeral,axiom,
    ! [X: rat,V: num] :
      ( ( ord_less_eq_int @ ( archim3151403230148437115or_rat @ X ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) )
      = ( ord_less_rat @ X @ ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ one_one_rat ) ) ) ).

% floor_le_neg_numeral
thf(fact_4110_ceiling__less__neg__numeral,axiom,
    ! [X: rat,V: num] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) )
      = ( ord_less_eq_rat @ X @ ( minus_minus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ one_one_rat ) ) ) ).

% ceiling_less_neg_numeral
thf(fact_4111_neg__numeral__le__ceiling,axiom,
    ! [V: num,X: rat] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( archim2889992004027027881ng_rat @ X ) )
      = ( ord_less_rat @ ( minus_minus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ one_one_rat ) @ X ) ) ).

% neg_numeral_le_ceiling
thf(fact_4112_of__int__le__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ A ) @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X ) ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) ) ) ).

% of_int_le_neg_numeral_power_cancel_iff
thf(fact_4113_of__int__le__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ A ) @ ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X ) ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) ) ) ).

% of_int_le_neg_numeral_power_cancel_iff
thf(fact_4114_of__int__le__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ A ) @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) ) ) ).

% of_int_le_neg_numeral_power_cancel_iff
thf(fact_4115_neg__numeral__power__le__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X ) ) @ N ) @ ( ring_18347121197199848620nteger @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) @ A ) ) ).

% neg_numeral_power_le_of_int_cancel_iff
thf(fact_4116_neg__numeral__power__le__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X ) ) @ N ) @ ( ring_1_of_int_rat @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) @ A ) ) ).

% neg_numeral_power_le_of_int_cancel_iff
thf(fact_4117_neg__numeral__power__le__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) @ ( ring_1_of_int_int @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) @ A ) ) ).

% neg_numeral_power_le_of_int_cancel_iff
thf(fact_4118_of__int__less__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ A ) @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) ) ) ).

% of_int_less_neg_numeral_power_cancel_iff
thf(fact_4119_of__int__less__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ A ) @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X ) ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) ) ) ).

% of_int_less_neg_numeral_power_cancel_iff
thf(fact_4120_of__int__less__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X: num,N: nat] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ A ) @ ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X ) ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) ) ) ).

% of_int_less_neg_numeral_power_cancel_iff
thf(fact_4121_neg__numeral__power__less__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) @ ( ring_1_of_int_int @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) @ A ) ) ).

% neg_numeral_power_less_of_int_cancel_iff
thf(fact_4122_neg__numeral__power__less__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X ) ) @ N ) @ ( ring_18347121197199848620nteger @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) @ A ) ) ).

% neg_numeral_power_less_of_int_cancel_iff
thf(fact_4123_neg__numeral__power__less__of__int__cancel__iff,axiom,
    ! [X: num,N: nat,A: int] :
      ( ( ord_less_rat @ ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X ) ) @ N ) @ ( ring_1_of_int_rat @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X ) ) @ N ) @ A ) ) ).

% neg_numeral_power_less_of_int_cancel_iff
thf(fact_4124_int__ops_I3_J,axiom,
    ! [N: num] :
      ( ( semiri1314217659103216013at_int @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_int @ N ) ) ).

% int_ops(3)
thf(fact_4125_nat__numeral__as__int,axiom,
    ( numeral_numeral_nat
    = ( ^ [I2: num] : ( nat2 @ ( numeral_numeral_int @ I2 ) ) ) ) ).

% nat_numeral_as_int
thf(fact_4126_mod__add__right__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ A @ ( modulo_modulo_int @ B @ C ) ) @ C )
      = ( modulo_modulo_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% mod_add_right_eq
thf(fact_4127_mod__add__right__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ A @ ( modulo_modulo_nat @ B @ C ) ) @ C )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ A @ B ) @ C ) ) ).

% mod_add_right_eq
thf(fact_4128_mod__add__right__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ ( modulo364778990260209775nteger @ B @ C ) ) @ C )
      = ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% mod_add_right_eq
thf(fact_4129_mod__add__left__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ ( modulo_modulo_int @ A @ C ) @ B ) @ C )
      = ( modulo_modulo_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% mod_add_left_eq
thf(fact_4130_mod__add__left__eq,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ ( modulo_modulo_nat @ A @ C ) @ B ) @ C )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ A @ B ) @ C ) ) ).

% mod_add_left_eq
thf(fact_4131_mod__add__left__eq,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ C ) @ B ) @ C )
      = ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% mod_add_left_eq
thf(fact_4132_mod__add__cong,axiom,
    ! [A: int,C: int,A5: int,B: int,B5: int] :
      ( ( ( modulo_modulo_int @ A @ C )
        = ( modulo_modulo_int @ A5 @ C ) )
     => ( ( ( modulo_modulo_int @ B @ C )
          = ( modulo_modulo_int @ B5 @ C ) )
       => ( ( modulo_modulo_int @ ( plus_plus_int @ A @ B ) @ C )
          = ( modulo_modulo_int @ ( plus_plus_int @ A5 @ B5 ) @ C ) ) ) ) ).

% mod_add_cong
thf(fact_4133_mod__add__cong,axiom,
    ! [A: nat,C: nat,A5: nat,B: nat,B5: nat] :
      ( ( ( modulo_modulo_nat @ A @ C )
        = ( modulo_modulo_nat @ A5 @ C ) )
     => ( ( ( modulo_modulo_nat @ B @ C )
          = ( modulo_modulo_nat @ B5 @ C ) )
       => ( ( modulo_modulo_nat @ ( plus_plus_nat @ A @ B ) @ C )
          = ( modulo_modulo_nat @ ( plus_plus_nat @ A5 @ B5 ) @ C ) ) ) ) ).

% mod_add_cong
thf(fact_4134_mod__add__cong,axiom,
    ! [A: code_integer,C: code_integer,A5: code_integer,B: code_integer,B5: code_integer] :
      ( ( ( modulo364778990260209775nteger @ A @ C )
        = ( modulo364778990260209775nteger @ A5 @ C ) )
     => ( ( ( modulo364778990260209775nteger @ B @ C )
          = ( modulo364778990260209775nteger @ B5 @ C ) )
       => ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
          = ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A5 @ B5 ) @ C ) ) ) ) ).

% mod_add_cong
thf(fact_4135_mod__add__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ ( modulo_modulo_int @ A @ C ) @ ( modulo_modulo_int @ B @ C ) ) @ C )
      = ( modulo_modulo_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% mod_add_eq
thf(fact_4136_mod__add__eq,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ ( modulo_modulo_nat @ A @ C ) @ ( modulo_modulo_nat @ B @ C ) ) @ C )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ A @ B ) @ C ) ) ).

% mod_add_eq
thf(fact_4137_mod__add__eq,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ C ) @ ( modulo364778990260209775nteger @ B @ C ) ) @ C )
      = ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% mod_add_eq
thf(fact_4138_dvd__mod__imp__dvd,axiom,
    ! [C: int,A: int,B: int] :
      ( ( dvd_dvd_int @ C @ ( modulo_modulo_int @ A @ B ) )
     => ( ( dvd_dvd_int @ C @ B )
       => ( dvd_dvd_int @ C @ A ) ) ) ).

% dvd_mod_imp_dvd
thf(fact_4139_dvd__mod__imp__dvd,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( dvd_dvd_nat @ C @ ( modulo_modulo_nat @ A @ B ) )
     => ( ( dvd_dvd_nat @ C @ B )
       => ( dvd_dvd_nat @ C @ A ) ) ) ).

% dvd_mod_imp_dvd
thf(fact_4140_dvd__mod__imp__dvd,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ ( modulo364778990260209775nteger @ A @ B ) )
     => ( ( dvd_dvd_Code_integer @ C @ B )
       => ( dvd_dvd_Code_integer @ C @ A ) ) ) ).

% dvd_mod_imp_dvd
thf(fact_4141_dvd__mod__iff,axiom,
    ! [C: int,B: int,A: int] :
      ( ( dvd_dvd_int @ C @ B )
     => ( ( dvd_dvd_int @ C @ ( modulo_modulo_int @ A @ B ) )
        = ( dvd_dvd_int @ C @ A ) ) ) ).

% dvd_mod_iff
thf(fact_4142_dvd__mod__iff,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( dvd_dvd_nat @ C @ B )
     => ( ( dvd_dvd_nat @ C @ ( modulo_modulo_nat @ A @ B ) )
        = ( dvd_dvd_nat @ C @ A ) ) ) ).

% dvd_mod_iff
thf(fact_4143_dvd__mod__iff,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ C @ B )
     => ( ( dvd_dvd_Code_integer @ C @ ( modulo364778990260209775nteger @ A @ B ) )
        = ( dvd_dvd_Code_integer @ C @ A ) ) ) ).

% dvd_mod_iff
thf(fact_4144_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_z2226904508553997617atural
     != ( numera5444537566228673987atural @ N ) ) ).

% zero_neq_numeral
thf(fact_4145_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_zero_int
     != ( numeral_numeral_int @ N ) ) ).

% zero_neq_numeral
thf(fact_4146_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_zero_nat
     != ( numeral_numeral_nat @ N ) ) ).

% zero_neq_numeral
thf(fact_4147_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_z3403309356797280102nteger
     != ( numera6620942414471956472nteger @ N ) ) ).

% zero_neq_numeral
thf(fact_4148_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_zero_rat
     != ( numeral_numeral_rat @ N ) ) ).

% zero_neq_numeral
thf(fact_4149_nat__mod__as__int,axiom,
    ( modulo_modulo_nat
    = ( ^ [A4: nat,B4: nat] : ( nat2 @ ( modulo_modulo_int @ ( semiri1314217659103216013at_int @ A4 ) @ ( semiri1314217659103216013at_int @ B4 ) ) ) ) ) ).

% nat_mod_as_int
thf(fact_4150_Ints__numeral,axiom,
    ! [N: num] : ( member_int @ ( numeral_numeral_int @ N ) @ ring_1_Ints_int ) ).

% Ints_numeral
thf(fact_4151_Ints__numeral,axiom,
    ! [N: num] : ( member_Code_integer @ ( numera6620942414471956472nteger @ N ) @ ring_11222124179247155820nteger ) ).

% Ints_numeral
thf(fact_4152_Ints__numeral,axiom,
    ! [N: num] : ( member_rat @ ( numeral_numeral_rat @ N ) @ ring_1_Ints_rat ) ).

% Ints_numeral
thf(fact_4153_Nats__numeral,axiom,
    ! [W: num] : ( member_int @ ( numeral_numeral_int @ W ) @ semiring_1_Nats_int ) ).

% Nats_numeral
thf(fact_4154_Nats__numeral,axiom,
    ! [W: num] : ( member_nat @ ( numeral_numeral_nat @ W ) @ semiring_1_Nats_nat ) ).

% Nats_numeral
thf(fact_4155_Nats__numeral,axiom,
    ! [W: num] : ( member_Code_integer @ ( numera6620942414471956472nteger @ W ) @ semiri2551628265256775642nteger ) ).

% Nats_numeral
thf(fact_4156_Nats__numeral,axiom,
    ! [W: num] : ( member_rat @ ( numeral_numeral_rat @ W ) @ semiring_1_Nats_rat ) ).

% Nats_numeral
thf(fact_4157_of__int__neg__numeral,axiom,
    ! [K: num] :
      ( ( ring_1_of_int_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) ) ).

% of_int_neg_numeral
thf(fact_4158_of__int__neg__numeral,axiom,
    ! [K: num] :
      ( ( ring_18347121197199848620nteger @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ K ) ) ) ).

% of_int_neg_numeral
thf(fact_4159_of__int__neg__numeral,axiom,
    ! [K: num] :
      ( ( ring_1_of_int_rat @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ K ) ) ) ).

% of_int_neg_numeral
thf(fact_4160_unique__euclidean__semiring__numeral__class_Omod__less__eq__dividend,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ord_le3102999989581377725nteger @ ( modulo364778990260209775nteger @ A @ B ) @ A ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less_eq_dividend
thf(fact_4161_unique__euclidean__semiring__numeral__class_Omod__less__eq__dividend,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ord_less_eq_nat @ ( modulo_modulo_nat @ A @ B ) @ A ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less_eq_dividend
thf(fact_4162_unique__euclidean__semiring__numeral__class_Omod__less__eq__dividend,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ord_less_eq_int @ ( modulo_modulo_int @ A @ B ) @ A ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less_eq_dividend
thf(fact_4163_unique__euclidean__semiring__numeral__class_Opos__mod__bound,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ord_less_int @ ( modulo_modulo_int @ A @ B ) @ B ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_bound
thf(fact_4164_unique__euclidean__semiring__numeral__class_Opos__mod__bound,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ord_less_nat @ ( modulo_modulo_nat @ A @ B ) @ B ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_bound
thf(fact_4165_unique__euclidean__semiring__numeral__class_Opos__mod__bound,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ord_le6747313008572928689nteger @ ( modulo364778990260209775nteger @ A @ B ) @ B ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_bound
thf(fact_4166_mod__eqE,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ( modulo_modulo_int @ A @ C )
        = ( modulo_modulo_int @ B @ C ) )
     => ~ ! [D3: int] :
            ( B
           != ( plus_plus_int @ A @ ( times_times_int @ C @ D3 ) ) ) ) ).

% mod_eqE
thf(fact_4167_mod__eqE,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ( modulo364778990260209775nteger @ A @ C )
        = ( modulo364778990260209775nteger @ B @ C ) )
     => ~ ! [D3: code_integer] :
            ( B
           != ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ C @ D3 ) ) ) ) ).

% mod_eqE
thf(fact_4168_mod__eq__0__iff__dvd,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( modulo8411746178871703098atural @ A @ B )
        = zero_z2226904508553997617atural )
      = ( dvd_dvd_Code_natural @ B @ A ) ) ).

% mod_eq_0_iff_dvd
thf(fact_4169_mod__eq__0__iff__dvd,axiom,
    ! [A: int,B: int] :
      ( ( ( modulo_modulo_int @ A @ B )
        = zero_zero_int )
      = ( dvd_dvd_int @ B @ A ) ) ).

% mod_eq_0_iff_dvd
thf(fact_4170_mod__eq__0__iff__dvd,axiom,
    ! [A: nat,B: nat] :
      ( ( ( modulo_modulo_nat @ A @ B )
        = zero_zero_nat )
      = ( dvd_dvd_nat @ B @ A ) ) ).

% mod_eq_0_iff_dvd
thf(fact_4171_mod__eq__0__iff__dvd,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( modulo364778990260209775nteger @ A @ B )
        = zero_z3403309356797280102nteger )
      = ( dvd_dvd_Code_integer @ B @ A ) ) ).

% mod_eq_0_iff_dvd
thf(fact_4172_dvd__eq__mod__eq__0,axiom,
    ( dvd_dvd_Code_natural
    = ( ^ [A4: code_natural,B4: code_natural] :
          ( ( modulo8411746178871703098atural @ B4 @ A4 )
          = zero_z2226904508553997617atural ) ) ) ).

% dvd_eq_mod_eq_0
thf(fact_4173_dvd__eq__mod__eq__0,axiom,
    ( dvd_dvd_int
    = ( ^ [A4: int,B4: int] :
          ( ( modulo_modulo_int @ B4 @ A4 )
          = zero_zero_int ) ) ) ).

% dvd_eq_mod_eq_0
thf(fact_4174_dvd__eq__mod__eq__0,axiom,
    ( dvd_dvd_nat
    = ( ^ [A4: nat,B4: nat] :
          ( ( modulo_modulo_nat @ B4 @ A4 )
          = zero_zero_nat ) ) ) ).

% dvd_eq_mod_eq_0
thf(fact_4175_dvd__eq__mod__eq__0,axiom,
    ( dvd_dvd_Code_integer
    = ( ^ [A4: code_integer,B4: code_integer] :
          ( ( modulo364778990260209775nteger @ B4 @ A4 )
          = zero_z3403309356797280102nteger ) ) ) ).

% dvd_eq_mod_eq_0
thf(fact_4176_mod__0__imp__dvd,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( modulo8411746178871703098atural @ A @ B )
        = zero_z2226904508553997617atural )
     => ( dvd_dvd_Code_natural @ B @ A ) ) ).

% mod_0_imp_dvd
thf(fact_4177_mod__0__imp__dvd,axiom,
    ! [A: int,B: int] :
      ( ( ( modulo_modulo_int @ A @ B )
        = zero_zero_int )
     => ( dvd_dvd_int @ B @ A ) ) ).

% mod_0_imp_dvd
thf(fact_4178_mod__0__imp__dvd,axiom,
    ! [A: nat,B: nat] :
      ( ( ( modulo_modulo_nat @ A @ B )
        = zero_zero_nat )
     => ( dvd_dvd_nat @ B @ A ) ) ).

% mod_0_imp_dvd
thf(fact_4179_mod__0__imp__dvd,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( modulo364778990260209775nteger @ A @ B )
        = zero_z3403309356797280102nteger )
     => ( dvd_dvd_Code_integer @ B @ A ) ) ).

% mod_0_imp_dvd
thf(fact_4180_mod__eq__self__iff__div__eq__0,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( modulo8411746178871703098atural @ A @ B )
        = A )
      = ( ( divide5121882707175180666atural @ A @ B )
        = zero_z2226904508553997617atural ) ) ).

% mod_eq_self_iff_div_eq_0
thf(fact_4181_mod__eq__self__iff__div__eq__0,axiom,
    ! [A: int,B: int] :
      ( ( ( modulo_modulo_int @ A @ B )
        = A )
      = ( ( divide_divide_int @ A @ B )
        = zero_zero_int ) ) ).

% mod_eq_self_iff_div_eq_0
thf(fact_4182_mod__eq__self__iff__div__eq__0,axiom,
    ! [A: nat,B: nat] :
      ( ( ( modulo_modulo_nat @ A @ B )
        = A )
      = ( ( divide_divide_nat @ A @ B )
        = zero_zero_nat ) ) ).

% mod_eq_self_iff_div_eq_0
thf(fact_4183_mod__eq__self__iff__div__eq__0,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( modulo364778990260209775nteger @ A @ B )
        = A )
      = ( ( divide6298287555418463151nteger @ A @ B )
        = zero_z3403309356797280102nteger ) ) ).

% mod_eq_self_iff_div_eq_0
thf(fact_4184_div__add1__eq,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ B ) @ C )
      = ( plus_p4538020629002901425atural @ ( plus_p4538020629002901425atural @ ( divide5121882707175180666atural @ A @ C ) @ ( divide5121882707175180666atural @ B @ C ) ) @ ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ C ) @ ( modulo8411746178871703098atural @ B @ C ) ) @ C ) ) ) ).

% div_add1_eq
thf(fact_4185_div__add1__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( divide_divide_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( plus_plus_int @ ( divide_divide_int @ A @ C ) @ ( divide_divide_int @ B @ C ) ) @ ( divide_divide_int @ ( plus_plus_int @ ( modulo_modulo_int @ A @ C ) @ ( modulo_modulo_int @ B @ C ) ) @ C ) ) ) ).

% div_add1_eq
thf(fact_4186_div__add1__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( divide_divide_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( divide_divide_nat @ A @ C ) @ ( divide_divide_nat @ B @ C ) ) @ ( divide_divide_nat @ ( plus_plus_nat @ ( modulo_modulo_nat @ A @ C ) @ ( modulo_modulo_nat @ B @ C ) ) @ C ) ) ) ).

% div_add1_eq
thf(fact_4187_div__add1__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( divide6298287555418463151nteger @ A @ C ) @ ( divide6298287555418463151nteger @ B @ C ) ) @ ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ C ) @ ( modulo364778990260209775nteger @ B @ C ) ) @ C ) ) ) ).

% div_add1_eq
thf(fact_4188_dvd__minus__mod,axiom,
    ! [B: int,A: int] : ( dvd_dvd_int @ B @ ( minus_minus_int @ A @ ( modulo_modulo_int @ A @ B ) ) ) ).

% dvd_minus_mod
thf(fact_4189_dvd__minus__mod,axiom,
    ! [B: nat,A: nat] : ( dvd_dvd_nat @ B @ ( minus_minus_nat @ A @ ( modulo_modulo_nat @ A @ B ) ) ) ).

% dvd_minus_mod
thf(fact_4190_dvd__minus__mod,axiom,
    ! [B: code_integer,A: code_integer] : ( dvd_dvd_Code_integer @ B @ ( minus_8373710615458151222nteger @ A @ ( modulo364778990260209775nteger @ A @ B ) ) ) ).

% dvd_minus_mod
thf(fact_4191_mod__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ( suc @ ( modulo_modulo_nat @ M @ N ) )
          = N )
       => ( ( modulo_modulo_nat @ ( suc @ M ) @ N )
          = zero_zero_nat ) )
      & ( ( ( suc @ ( modulo_modulo_nat @ M @ N ) )
         != N )
       => ( ( modulo_modulo_nat @ ( suc @ M ) @ N )
          = ( suc @ ( modulo_modulo_nat @ M @ N ) ) ) ) ) ).

% mod_Suc
thf(fact_4192_gcd__nat__induct,axiom,
    ! [P: nat > nat > $o,M: nat,N: nat] :
      ( ! [M4: nat] : ( P @ M4 @ zero_zero_nat )
     => ( ! [M4: nat,N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( ( P @ N2 @ ( modulo_modulo_nat @ M4 @ N2 ) )
             => ( P @ M4 @ N2 ) ) )
       => ( P @ M @ N ) ) ) ).

% gcd_nat_induct
thf(fact_4193_mod__less__divisor,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( modulo_modulo_nat @ M @ N ) @ N ) ) ).

% mod_less_divisor
thf(fact_4194_zero__le__numeral,axiom,
    ! [N: num] : ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( numera5444537566228673987atural @ N ) ) ).

% zero_le_numeral
thf(fact_4195_zero__le__numeral,axiom,
    ! [N: num] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( numera6620942414471956472nteger @ N ) ) ).

% zero_le_numeral
thf(fact_4196_zero__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_rat @ zero_zero_rat @ ( numeral_numeral_rat @ N ) ) ).

% zero_le_numeral
thf(fact_4197_zero__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_nat @ zero_zero_nat @ ( numeral_numeral_nat @ N ) ) ).

% zero_le_numeral
thf(fact_4198_zero__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_int @ zero_zero_int @ ( numeral_numeral_int @ N ) ) ).

% zero_le_numeral
thf(fact_4199_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_le1926595141338095240atural @ ( numera5444537566228673987atural @ N ) @ zero_z2226904508553997617atural ) ).

% not_numeral_le_zero
thf(fact_4200_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ N ) @ zero_z3403309356797280102nteger ) ).

% not_numeral_le_zero
thf(fact_4201_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_rat @ ( numeral_numeral_rat @ N ) @ zero_zero_rat ) ).

% not_numeral_le_zero
thf(fact_4202_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_nat @ ( numeral_numeral_nat @ N ) @ zero_zero_nat ) ).

% not_numeral_le_zero
thf(fact_4203_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ zero_zero_int ) ).

% not_numeral_le_zero
thf(fact_4204_zero__less__numeral,axiom,
    ! [N: num] : ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( numera5444537566228673987atural @ N ) ) ).

% zero_less_numeral
thf(fact_4205_zero__less__numeral,axiom,
    ! [N: num] : ( ord_less_int @ zero_zero_int @ ( numeral_numeral_int @ N ) ) ).

% zero_less_numeral
thf(fact_4206_zero__less__numeral,axiom,
    ! [N: num] : ( ord_less_nat @ zero_zero_nat @ ( numeral_numeral_nat @ N ) ) ).

% zero_less_numeral
thf(fact_4207_zero__less__numeral,axiom,
    ! [N: num] : ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( numera6620942414471956472nteger @ N ) ) ).

% zero_less_numeral
thf(fact_4208_zero__less__numeral,axiom,
    ! [N: num] : ( ord_less_rat @ zero_zero_rat @ ( numeral_numeral_rat @ N ) ) ).

% zero_less_numeral
thf(fact_4209_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_le5570908160329646204atural @ ( numera5444537566228673987atural @ N ) @ zero_z2226904508553997617atural ) ).

% not_numeral_less_zero
thf(fact_4210_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ N ) @ zero_zero_int ) ).

% not_numeral_less_zero
thf(fact_4211_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ zero_zero_nat ) ).

% not_numeral_less_zero
thf(fact_4212_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_le6747313008572928689nteger @ ( numera6620942414471956472nteger @ N ) @ zero_z3403309356797280102nteger ) ).

% not_numeral_less_zero
thf(fact_4213_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_rat @ ( numeral_numeral_rat @ N ) @ zero_zero_rat ) ).

% not_numeral_less_zero
thf(fact_4214_one__le__numeral,axiom,
    ! [N: num] : ( ord_le1926595141338095240atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ N ) ) ).

% one_le_numeral
thf(fact_4215_one__le__numeral,axiom,
    ! [N: num] : ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ N ) ) ).

% one_le_numeral
thf(fact_4216_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_rat @ one_one_rat @ ( numeral_numeral_rat @ N ) ) ).

% one_le_numeral
thf(fact_4217_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) ) ).

% one_le_numeral
thf(fact_4218_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_int @ one_one_int @ ( numeral_numeral_int @ N ) ) ).

% one_le_numeral
thf(fact_4219_mod__eq__0D,axiom,
    ! [M: nat,D: nat] :
      ( ( ( modulo_modulo_nat @ M @ D )
        = zero_zero_nat )
     => ? [Q3: nat] :
          ( M
          = ( times_times_nat @ D @ Q3 ) ) ) ).

% mod_eq_0D
thf(fact_4220_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_le5570908160329646204atural @ ( numera5444537566228673987atural @ N ) @ one_one_Code_natural ) ).

% not_numeral_less_one
thf(fact_4221_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ N ) @ one_one_int ) ).

% not_numeral_less_one
thf(fact_4222_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat ) ).

% not_numeral_less_one
thf(fact_4223_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_le6747313008572928689nteger @ ( numera6620942414471956472nteger @ N ) @ one_one_Code_integer ) ).

% not_numeral_less_one
thf(fact_4224_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_rat @ ( numeral_numeral_rat @ N ) @ one_one_rat ) ).

% not_numeral_less_one
thf(fact_4225_zero__neq__neg__numeral,axiom,
    ! [N: num] :
      ( zero_zero_int
     != ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% zero_neq_neg_numeral
thf(fact_4226_zero__neq__neg__numeral,axiom,
    ! [N: num] :
      ( zero_z3403309356797280102nteger
     != ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% zero_neq_neg_numeral
thf(fact_4227_zero__neq__neg__numeral,axiom,
    ! [N: num] :
      ( zero_zero_rat
     != ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% zero_neq_neg_numeral
thf(fact_4228_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ X ) )
      = ( plus_p4538020629002901425atural @ ( numera5444537566228673987atural @ X ) @ one_one_Code_natural ) ) ).

% one_plus_numeral_commute
thf(fact_4229_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_int @ one_one_int @ ( numeral_numeral_int @ X ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ X ) @ one_one_int ) ) ).

% one_plus_numeral_commute
thf(fact_4230_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_nat @ one_one_nat @ ( numeral_numeral_nat @ X ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ X ) @ one_one_nat ) ) ).

% one_plus_numeral_commute
thf(fact_4231_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ X ) )
      = ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ X ) @ one_one_Code_integer ) ) ).

% one_plus_numeral_commute
thf(fact_4232_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_rat @ one_one_rat @ ( numeral_numeral_rat @ X ) )
      = ( plus_plus_rat @ ( numeral_numeral_rat @ X ) @ one_one_rat ) ) ).

% one_plus_numeral_commute
thf(fact_4233_nat__mod__eq__iff,axiom,
    ! [X: nat,N: nat,Y3: nat] :
      ( ( ( modulo_modulo_nat @ X @ N )
        = ( modulo_modulo_nat @ Y3 @ N ) )
      = ( ? [Q1: nat,Q22: nat] :
            ( ( plus_plus_nat @ X @ ( times_times_nat @ N @ Q1 ) )
            = ( plus_plus_nat @ Y3 @ ( times_times_nat @ N @ Q22 ) ) ) ) ) ).

% nat_mod_eq_iff
thf(fact_4234_numeral__neq__neg__one,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ N )
     != ( uminus_uminus_int @ one_one_int ) ) ).

% numeral_neq_neg_one
thf(fact_4235_numeral__neq__neg__one,axiom,
    ! [N: num] :
      ( ( numera6620942414471956472nteger @ N )
     != ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% numeral_neq_neg_one
thf(fact_4236_numeral__neq__neg__one,axiom,
    ! [N: num] :
      ( ( numeral_numeral_rat @ N )
     != ( uminus_uminus_rat @ one_one_rat ) ) ).

% numeral_neq_neg_one
thf(fact_4237_one__neq__neg__numeral,axiom,
    ! [N: num] :
      ( one_one_int
     != ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% one_neq_neg_numeral
thf(fact_4238_one__neq__neg__numeral,axiom,
    ! [N: num] :
      ( one_one_Code_integer
     != ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% one_neq_neg_numeral
thf(fact_4239_one__neq__neg__numeral,axiom,
    ! [N: num] :
      ( one_one_rat
     != ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% one_neq_neg_numeral
thf(fact_4240_mod__int__unique,axiom,
    ! [K: int,L: int,Q2: int,R: int] :
      ( ( eucl_rel_int @ K @ L @ ( product_Pair_int_int @ Q2 @ R ) )
     => ( ( modulo_modulo_int @ K @ L )
        = R ) ) ).

% mod_int_unique
thf(fact_4241_unique__euclidean__semiring__numeral__class_Opos__mod__sign,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( modulo364778990260209775nteger @ A @ B ) ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_sign
thf(fact_4242_unique__euclidean__semiring__numeral__class_Opos__mod__sign,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ord_less_eq_nat @ zero_zero_nat @ ( modulo_modulo_nat @ A @ B ) ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_sign
thf(fact_4243_unique__euclidean__semiring__numeral__class_Opos__mod__sign,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ord_less_eq_int @ zero_zero_int @ ( modulo_modulo_int @ A @ B ) ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_sign
thf(fact_4244_unique__euclidean__semiring__numeral__class_Omod__less,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ A @ B )
       => ( ( modulo364778990260209775nteger @ A @ B )
          = A ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less
thf(fact_4245_unique__euclidean__semiring__numeral__class_Omod__less,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ A @ B )
       => ( ( modulo_modulo_nat @ A @ B )
          = A ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less
thf(fact_4246_unique__euclidean__semiring__numeral__class_Omod__less,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ A @ B )
       => ( ( modulo_modulo_int @ A @ B )
          = A ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less
thf(fact_4247_unit__imp__mod__eq__0,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( dvd_dvd_Code_natural @ B @ one_one_Code_natural )
     => ( ( modulo8411746178871703098atural @ A @ B )
        = zero_z2226904508553997617atural ) ) ).

% unit_imp_mod_eq_0
thf(fact_4248_unit__imp__mod__eq__0,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( ( modulo_modulo_int @ A @ B )
        = zero_zero_int ) ) ).

% unit_imp_mod_eq_0
thf(fact_4249_unit__imp__mod__eq__0,axiom,
    ! [B: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( ( modulo_modulo_nat @ A @ B )
        = zero_zero_nat ) ) ).

% unit_imp_mod_eq_0
thf(fact_4250_unit__imp__mod__eq__0,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ B @ one_one_Code_integer )
     => ( ( modulo364778990260209775nteger @ A @ B )
        = zero_z3403309356797280102nteger ) ) ).

% unit_imp_mod_eq_0
thf(fact_4251_cancel__div__mod__rules_I2_J,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ B @ ( divide5121882707175180666atural @ A @ B ) ) @ ( modulo8411746178871703098atural @ A @ B ) ) @ C )
      = ( plus_p4538020629002901425atural @ A @ C ) ) ).

% cancel_div_mod_rules(2)
thf(fact_4252_cancel__div__mod__rules_I2_J,axiom,
    ! [B: int,A: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ ( times_times_int @ B @ ( divide_divide_int @ A @ B ) ) @ ( modulo_modulo_int @ A @ B ) ) @ C )
      = ( plus_plus_int @ A @ C ) ) ).

% cancel_div_mod_rules(2)
thf(fact_4253_cancel__div__mod__rules_I2_J,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ ( times_times_nat @ B @ ( divide_divide_nat @ A @ B ) ) @ ( modulo_modulo_nat @ A @ B ) ) @ C )
      = ( plus_plus_nat @ A @ C ) ) ).

% cancel_div_mod_rules(2)
thf(fact_4254_cancel__div__mod__rules_I2_J,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ ( divide6298287555418463151nteger @ A @ B ) ) @ ( modulo364778990260209775nteger @ A @ B ) ) @ C )
      = ( plus_p5714425477246183910nteger @ A @ C ) ) ).

% cancel_div_mod_rules(2)
thf(fact_4255_cancel__div__mod__rules_I1_J,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ B ) @ ( modulo8411746178871703098atural @ A @ B ) ) @ C )
      = ( plus_p4538020629002901425atural @ A @ C ) ) ).

% cancel_div_mod_rules(1)
thf(fact_4256_cancel__div__mod__rules_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ ( times_times_int @ ( divide_divide_int @ A @ B ) @ B ) @ ( modulo_modulo_int @ A @ B ) ) @ C )
      = ( plus_plus_int @ A @ C ) ) ).

% cancel_div_mod_rules(1)
thf(fact_4257_cancel__div__mod__rules_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ B ) @ ( modulo_modulo_nat @ A @ B ) ) @ C )
      = ( plus_plus_nat @ A @ C ) ) ).

% cancel_div_mod_rules(1)
thf(fact_4258_cancel__div__mod__rules_I1_J,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ B ) @ ( modulo364778990260209775nteger @ A @ B ) ) @ C )
      = ( plus_p5714425477246183910nteger @ A @ C ) ) ).

% cancel_div_mod_rules(1)
thf(fact_4259_mod__div__decomp,axiom,
    ! [A: code_natural,B: code_natural] :
      ( A
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ B ) @ ( modulo8411746178871703098atural @ A @ B ) ) ) ).

% mod_div_decomp
thf(fact_4260_mod__div__decomp,axiom,
    ! [A: int,B: int] :
      ( A
      = ( plus_plus_int @ ( times_times_int @ ( divide_divide_int @ A @ B ) @ B ) @ ( modulo_modulo_int @ A @ B ) ) ) ).

% mod_div_decomp
thf(fact_4261_mod__div__decomp,axiom,
    ! [A: nat,B: nat] :
      ( A
      = ( plus_plus_nat @ ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ B ) @ ( modulo_modulo_nat @ A @ B ) ) ) ).

% mod_div_decomp
thf(fact_4262_mod__div__decomp,axiom,
    ! [A: code_integer,B: code_integer] :
      ( A
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ B ) @ ( modulo364778990260209775nteger @ A @ B ) ) ) ).

% mod_div_decomp
thf(fact_4263_div__mult__mod__eq,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ B ) @ ( modulo8411746178871703098atural @ A @ B ) )
      = A ) ).

% div_mult_mod_eq
thf(fact_4264_div__mult__mod__eq,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( times_times_int @ ( divide_divide_int @ A @ B ) @ B ) @ ( modulo_modulo_int @ A @ B ) )
      = A ) ).

% div_mult_mod_eq
thf(fact_4265_div__mult__mod__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ B ) @ ( modulo_modulo_nat @ A @ B ) )
      = A ) ).

% div_mult_mod_eq
thf(fact_4266_div__mult__mod__eq,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ B ) @ ( modulo364778990260209775nteger @ A @ B ) )
      = A ) ).

% div_mult_mod_eq
thf(fact_4267_mod__div__mult__eq,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ B ) @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ B ) )
      = A ) ).

% mod_div_mult_eq
thf(fact_4268_mod__div__mult__eq,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( modulo_modulo_int @ A @ B ) @ ( times_times_int @ ( divide_divide_int @ A @ B ) @ B ) )
      = A ) ).

% mod_div_mult_eq
thf(fact_4269_mod__div__mult__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( plus_plus_nat @ ( modulo_modulo_nat @ A @ B ) @ ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ B ) )
      = A ) ).

% mod_div_mult_eq
thf(fact_4270_mod__div__mult__eq,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ B ) @ ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ B ) )
      = A ) ).

% mod_div_mult_eq
thf(fact_4271_mod__mult__div__eq,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ B ) @ ( times_2397367101498566445atural @ B @ ( divide5121882707175180666atural @ A @ B ) ) )
      = A ) ).

% mod_mult_div_eq
thf(fact_4272_mod__mult__div__eq,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( modulo_modulo_int @ A @ B ) @ ( times_times_int @ B @ ( divide_divide_int @ A @ B ) ) )
      = A ) ).

% mod_mult_div_eq
thf(fact_4273_mod__mult__div__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( plus_plus_nat @ ( modulo_modulo_nat @ A @ B ) @ ( times_times_nat @ B @ ( divide_divide_nat @ A @ B ) ) )
      = A ) ).

% mod_mult_div_eq
thf(fact_4274_mod__mult__div__eq,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ B ) @ ( times_3573771949741848930nteger @ B @ ( divide6298287555418463151nteger @ A @ B ) ) )
      = A ) ).

% mod_mult_div_eq
thf(fact_4275_mult__div__mod__eq,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ B @ ( divide5121882707175180666atural @ A @ B ) ) @ ( modulo8411746178871703098atural @ A @ B ) )
      = A ) ).

% mult_div_mod_eq
thf(fact_4276_mult__div__mod__eq,axiom,
    ! [B: int,A: int] :
      ( ( plus_plus_int @ ( times_times_int @ B @ ( divide_divide_int @ A @ B ) ) @ ( modulo_modulo_int @ A @ B ) )
      = A ) ).

% mult_div_mod_eq
thf(fact_4277_mult__div__mod__eq,axiom,
    ! [B: nat,A: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ B @ ( divide_divide_nat @ A @ B ) ) @ ( modulo_modulo_nat @ A @ B ) )
      = A ) ).

% mult_div_mod_eq
thf(fact_4278_mult__div__mod__eq,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ ( divide6298287555418463151nteger @ A @ B ) ) @ ( modulo364778990260209775nteger @ A @ B ) )
      = A ) ).

% mult_div_mod_eq
thf(fact_4279_div__mult1__eq,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ B ) @ C )
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ A @ ( divide5121882707175180666atural @ B @ C ) ) @ ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ ( modulo8411746178871703098atural @ B @ C ) ) @ C ) ) ) ).

% div_mult1_eq
thf(fact_4280_div__mult1__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( divide_divide_int @ ( times_times_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ ( divide_divide_int @ B @ C ) ) @ ( divide_divide_int @ ( times_times_int @ A @ ( modulo_modulo_int @ B @ C ) ) @ C ) ) ) ).

% div_mult1_eq
thf(fact_4281_div__mult1__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( divide_divide_nat @ ( times_times_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( times_times_nat @ A @ ( divide_divide_nat @ B @ C ) ) @ ( divide_divide_nat @ ( times_times_nat @ A @ ( modulo_modulo_nat @ B @ C ) ) @ C ) ) ) ).

% div_mult1_eq
thf(fact_4282_div__mult1__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ ( divide6298287555418463151nteger @ B @ C ) ) @ ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ ( modulo364778990260209775nteger @ B @ C ) ) @ C ) ) ) ).

% div_mult1_eq
thf(fact_4283_minus__div__mult__eq__mod,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( minus_7197305767214868737atural @ A @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ B ) )
      = ( modulo8411746178871703098atural @ A @ B ) ) ).

% minus_div_mult_eq_mod
thf(fact_4284_minus__div__mult__eq__mod,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ A @ ( times_times_int @ ( divide_divide_int @ A @ B ) @ B ) )
      = ( modulo_modulo_int @ A @ B ) ) ).

% minus_div_mult_eq_mod
thf(fact_4285_minus__div__mult__eq__mod,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ A @ ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ B ) )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% minus_div_mult_eq_mod
thf(fact_4286_minus__div__mult__eq__mod,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ B ) )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% minus_div_mult_eq_mod
thf(fact_4287_minus__mod__eq__div__mult,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( minus_7197305767214868737atural @ A @ ( modulo8411746178871703098atural @ A @ B ) )
      = ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ B ) ) ).

% minus_mod_eq_div_mult
thf(fact_4288_minus__mod__eq__div__mult,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ A @ ( modulo_modulo_int @ A @ B ) )
      = ( times_times_int @ ( divide_divide_int @ A @ B ) @ B ) ) ).

% minus_mod_eq_div_mult
thf(fact_4289_minus__mod__eq__div__mult,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ A @ ( modulo_modulo_nat @ A @ B ) )
      = ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ B ) ) ).

% minus_mod_eq_div_mult
thf(fact_4290_minus__mod__eq__div__mult,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ ( modulo364778990260209775nteger @ A @ B ) )
      = ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ B ) ) ).

% minus_mod_eq_div_mult
thf(fact_4291_minus__mod__eq__mult__div,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( minus_7197305767214868737atural @ A @ ( modulo8411746178871703098atural @ A @ B ) )
      = ( times_2397367101498566445atural @ B @ ( divide5121882707175180666atural @ A @ B ) ) ) ).

% minus_mod_eq_mult_div
thf(fact_4292_minus__mod__eq__mult__div,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ A @ ( modulo_modulo_int @ A @ B ) )
      = ( times_times_int @ B @ ( divide_divide_int @ A @ B ) ) ) ).

% minus_mod_eq_mult_div
thf(fact_4293_minus__mod__eq__mult__div,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ A @ ( modulo_modulo_nat @ A @ B ) )
      = ( times_times_nat @ B @ ( divide_divide_nat @ A @ B ) ) ) ).

% minus_mod_eq_mult_div
thf(fact_4294_minus__mod__eq__mult__div,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ ( modulo364778990260209775nteger @ A @ B ) )
      = ( times_3573771949741848930nteger @ B @ ( divide6298287555418463151nteger @ A @ B ) ) ) ).

% minus_mod_eq_mult_div
thf(fact_4295_minus__mult__div__eq__mod,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( minus_7197305767214868737atural @ A @ ( times_2397367101498566445atural @ B @ ( divide5121882707175180666atural @ A @ B ) ) )
      = ( modulo8411746178871703098atural @ A @ B ) ) ).

% minus_mult_div_eq_mod
thf(fact_4296_minus__mult__div__eq__mod,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ A @ ( times_times_int @ B @ ( divide_divide_int @ A @ B ) ) )
      = ( modulo_modulo_int @ A @ B ) ) ).

% minus_mult_div_eq_mod
thf(fact_4297_minus__mult__div__eq__mod,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ A @ ( times_times_nat @ B @ ( divide_divide_nat @ A @ B ) ) )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% minus_mult_div_eq_mod
thf(fact_4298_minus__mult__div__eq__mod,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ ( times_3573771949741848930nteger @ B @ ( divide6298287555418463151nteger @ A @ B ) ) )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% minus_mult_div_eq_mod
thf(fact_4299_le__floor__add,axiom,
    ! [X: rat,Y3: rat] : ( ord_less_eq_int @ ( plus_plus_int @ ( archim3151403230148437115or_rat @ X ) @ ( archim3151403230148437115or_rat @ Y3 ) ) @ ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X @ Y3 ) ) ) ).

% le_floor_add
thf(fact_4300_floor__add__int,axiom,
    ! [X: rat,Z: int] :
      ( ( plus_plus_int @ ( archim3151403230148437115or_rat @ X ) @ Z )
      = ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X @ ( ring_1_of_int_rat @ Z ) ) ) ) ).

% floor_add_int
thf(fact_4301_int__add__floor,axiom,
    ! [Z: int,X: rat] :
      ( ( plus_plus_int @ Z @ ( archim3151403230148437115or_rat @ X ) )
      = ( archim3151403230148437115or_rat @ ( plus_plus_rat @ ( ring_1_of_int_rat @ Z ) @ X ) ) ) ).

% int_add_floor
thf(fact_4302_mod__le__divisor,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_eq_nat @ ( modulo_modulo_nat @ M @ N ) @ N ) ) ).

% mod_le_divisor
thf(fact_4303_fact__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( modulo8411746178871703098atural @ ( semiri2447717529341329178atural @ N ) @ ( semiri2447717529341329178atural @ M ) )
        = zero_z2226904508553997617atural ) ) ).

% fact_mod
thf(fact_4304_fact__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( modulo_modulo_int @ ( semiri1406184849735516958ct_int @ N ) @ ( semiri1406184849735516958ct_int @ M ) )
        = zero_zero_int ) ) ).

% fact_mod
thf(fact_4305_fact__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( modulo364778990260209775nteger @ ( semiri3624122377584611663nteger @ N ) @ ( semiri3624122377584611663nteger @ M ) )
        = zero_z3403309356797280102nteger ) ) ).

% fact_mod
thf(fact_4306_fact__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( modulo_modulo_nat @ ( semiri1408675320244567234ct_nat @ N ) @ ( semiri1408675320244567234ct_nat @ M ) )
        = zero_zero_nat ) ) ).

% fact_mod
thf(fact_4307_not__zero__le__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% not_zero_le_neg_numeral
thf(fact_4308_not__zero__le__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_rat @ zero_zero_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% not_zero_le_neg_numeral
thf(fact_4309_not__zero__le__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_int @ zero_zero_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% not_zero_le_neg_numeral
thf(fact_4310_neg__numeral__le__zero,axiom,
    ! [N: num] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) @ zero_z3403309356797280102nteger ) ).

% neg_numeral_le_zero
thf(fact_4311_neg__numeral__le__zero,axiom,
    ! [N: num] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) @ zero_zero_rat ) ).

% neg_numeral_le_zero
thf(fact_4312_neg__numeral__le__zero,axiom,
    ! [N: num] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) @ zero_zero_int ) ).

% neg_numeral_le_zero
thf(fact_4313_not__zero__less__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_less_int @ zero_zero_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% not_zero_less_neg_numeral
thf(fact_4314_not__zero__less__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% not_zero_less_neg_numeral
thf(fact_4315_not__zero__less__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_less_rat @ zero_zero_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% not_zero_less_neg_numeral
thf(fact_4316_neg__numeral__less__zero,axiom,
    ! [N: num] : ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) @ zero_zero_int ) ).

% neg_numeral_less_zero
thf(fact_4317_neg__numeral__less__zero,axiom,
    ! [N: num] : ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) @ zero_z3403309356797280102nteger ) ).

% neg_numeral_less_zero
thf(fact_4318_neg__numeral__less__zero,axiom,
    ! [N: num] : ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) @ zero_zero_rat ) ).

% neg_numeral_less_zero
thf(fact_4319_mod__greater__zero__iff__not__dvd,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( modulo_modulo_nat @ M @ N ) )
      = ( ~ ( dvd_dvd_nat @ N @ M ) ) ) ).

% mod_greater_zero_iff_not_dvd
thf(fact_4320_not__one__le__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) ) ).

% not_one_le_neg_numeral
thf(fact_4321_not__one__le__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_rat @ one_one_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) ) ).

% not_one_le_neg_numeral
thf(fact_4322_not__one__le__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) ) ).

% not_one_le_neg_numeral
thf(fact_4323_not__numeral__le__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% not_numeral_le_neg_one
thf(fact_4324_not__numeral__le__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% not_numeral_le_neg_one
thf(fact_4325_not__numeral__le__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ one_one_int ) ) ).

% not_numeral_le_neg_one
thf(fact_4326_neg__numeral__le__neg__one,axiom,
    ! [M: num] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% neg_numeral_le_neg_one
thf(fact_4327_neg__numeral__le__neg__one,axiom,
    ! [M: num] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% neg_numeral_le_neg_one
thf(fact_4328_neg__numeral__le__neg__one,axiom,
    ! [M: num] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ one_one_int ) ) ).

% neg_numeral_le_neg_one
thf(fact_4329_neg__one__le__numeral,axiom,
    ! [M: num] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ M ) ) ).

% neg_one_le_numeral
thf(fact_4330_neg__one__le__numeral,axiom,
    ! [M: num] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( numeral_numeral_rat @ M ) ) ).

% neg_one_le_numeral
thf(fact_4331_neg__one__le__numeral,axiom,
    ! [M: num] : ( ord_less_eq_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ M ) ) ).

% neg_one_le_numeral
thf(fact_4332_neg__numeral__le__one,axiom,
    ! [M: num] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ one_one_Code_integer ) ).

% neg_numeral_le_one
thf(fact_4333_neg__numeral__le__one,axiom,
    ! [M: num] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ one_one_rat ) ).

% neg_numeral_le_one
thf(fact_4334_neg__numeral__le__one,axiom,
    ! [M: num] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int ) ).

% neg_numeral_le_one
thf(fact_4335_divide__eq__eq__numeral_I1_J,axiom,
    ! [B: rat,C: rat,W: num] :
      ( ( ( divide_divide_rat @ B @ C )
        = ( numeral_numeral_rat @ W ) )
      = ( ( ( C != zero_zero_rat )
         => ( B
            = ( times_times_rat @ ( numeral_numeral_rat @ W ) @ C ) ) )
        & ( ( C = zero_zero_rat )
         => ( ( numeral_numeral_rat @ W )
            = zero_zero_rat ) ) ) ) ).

% divide_eq_eq_numeral(1)
thf(fact_4336_eq__divide__eq__numeral_I1_J,axiom,
    ! [W: num,B: rat,C: rat] :
      ( ( ( numeral_numeral_rat @ W )
        = ( divide_divide_rat @ B @ C ) )
      = ( ( ( C != zero_zero_rat )
         => ( ( times_times_rat @ ( numeral_numeral_rat @ W ) @ C )
            = B ) )
        & ( ( C = zero_zero_rat )
         => ( ( numeral_numeral_rat @ W )
            = zero_zero_rat ) ) ) ) ).

% eq_divide_eq_numeral(1)
thf(fact_4337_not__neg__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) ) ).

% not_neg_one_less_neg_numeral
thf(fact_4338_not__neg__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) ) ).

% not_neg_one_less_neg_numeral
thf(fact_4339_not__neg__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) ) ).

% not_neg_one_less_neg_numeral
thf(fact_4340_not__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) ) ).

% not_one_less_neg_numeral
thf(fact_4341_not__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) ) ).

% not_one_less_neg_numeral
thf(fact_4342_not__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_rat @ one_one_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) ) ).

% not_one_less_neg_numeral
thf(fact_4343_not__numeral__less__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ one_one_int ) ) ).

% not_numeral_less_neg_one
thf(fact_4344_not__numeral__less__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_le6747313008572928689nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% not_numeral_less_neg_one
thf(fact_4345_not__numeral__less__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_less_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% not_numeral_less_neg_one
thf(fact_4346_neg__one__less__numeral,axiom,
    ! [M: num] : ( ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ M ) ) ).

% neg_one_less_numeral
thf(fact_4347_neg__one__less__numeral,axiom,
    ! [M: num] : ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ M ) ) ).

% neg_one_less_numeral
thf(fact_4348_neg__one__less__numeral,axiom,
    ! [M: num] : ( ord_less_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( numeral_numeral_rat @ M ) ) ).

% neg_one_less_numeral
thf(fact_4349_neg__numeral__less__one,axiom,
    ! [M: num] : ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int ) ).

% neg_numeral_less_one
thf(fact_4350_neg__numeral__less__one,axiom,
    ! [M: num] : ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ one_one_Code_integer ) ).

% neg_numeral_less_one
thf(fact_4351_neg__numeral__less__one,axiom,
    ! [M: num] : ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ one_one_rat ) ).

% neg_numeral_less_one
thf(fact_4352_nat__mod__eq__lemma,axiom,
    ! [X: nat,N: nat,Y3: nat] :
      ( ( ( modulo_modulo_nat @ X @ N )
        = ( modulo_modulo_nat @ Y3 @ N ) )
     => ( ( ord_less_eq_nat @ Y3 @ X )
       => ? [Q3: nat] :
            ( X
            = ( plus_plus_nat @ Y3 @ ( times_times_nat @ N @ Q3 ) ) ) ) ) ).

% nat_mod_eq_lemma
thf(fact_4353_mod__eq__nat2E,axiom,
    ! [M: nat,Q2: nat,N: nat] :
      ( ( ( modulo_modulo_nat @ M @ Q2 )
        = ( modulo_modulo_nat @ N @ Q2 ) )
     => ( ( ord_less_eq_nat @ M @ N )
       => ~ ! [S5: nat] :
              ( N
             != ( plus_plus_nat @ M @ ( times_times_nat @ Q2 @ S5 ) ) ) ) ) ).

% mod_eq_nat2E
thf(fact_4354_mod__eq__nat1E,axiom,
    ! [M: nat,Q2: nat,N: nat] :
      ( ( ( modulo_modulo_nat @ M @ Q2 )
        = ( modulo_modulo_nat @ N @ Q2 ) )
     => ( ( ord_less_eq_nat @ N @ M )
       => ~ ! [S5: nat] :
              ( M
             != ( plus_plus_nat @ N @ ( times_times_nat @ Q2 @ S5 ) ) ) ) ) ).

% mod_eq_nat1E
thf(fact_4355_div__less__mono,axiom,
    ! [A3: nat,B3: nat,N: nat] :
      ( ( ord_less_nat @ A3 @ B3 )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( ( modulo_modulo_nat @ A3 @ N )
            = zero_zero_nat )
         => ( ( ( modulo_modulo_nat @ B3 @ N )
              = zero_zero_nat )
           => ( ord_less_nat @ ( divide_divide_nat @ A3 @ N ) @ ( divide_divide_nat @ B3 @ N ) ) ) ) ) ) ).

% div_less_mono
thf(fact_4356_zdiv__mono__strict,axiom,
    ! [A3: int,B3: int,N: int] :
      ( ( ord_less_int @ A3 @ B3 )
     => ( ( ord_less_int @ zero_zero_int @ N )
       => ( ( ( modulo_modulo_int @ A3 @ N )
            = zero_zero_int )
         => ( ( ( modulo_modulo_int @ B3 @ N )
              = zero_zero_int )
           => ( ord_less_int @ ( divide_divide_int @ A3 @ N ) @ ( divide_divide_int @ B3 @ N ) ) ) ) ) ) ).

% zdiv_mono_strict
thf(fact_4357_div__mod__decomp,axiom,
    ! [A3: nat,N: nat] :
      ( A3
      = ( plus_plus_nat @ ( times_times_nat @ ( divide_divide_nat @ A3 @ N ) @ N ) @ ( modulo_modulo_nat @ A3 @ N ) ) ) ).

% div_mod_decomp
thf(fact_4358_mod__mult2__eq,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( modulo_modulo_nat @ M @ ( times_times_nat @ N @ Q2 ) )
      = ( plus_plus_nat @ ( times_times_nat @ N @ ( modulo_modulo_nat @ ( divide_divide_nat @ M @ N ) @ Q2 ) ) @ ( modulo_modulo_nat @ M @ N ) ) ) ).

% mod_mult2_eq
thf(fact_4359_div__mod__decomp__int,axiom,
    ! [A3: int,N: int] :
      ( A3
      = ( plus_plus_int @ ( times_times_int @ ( divide_divide_int @ A3 @ N ) @ N ) @ ( modulo_modulo_int @ A3 @ N ) ) ) ).

% div_mod_decomp_int
thf(fact_4360_eucl__rel__int,axiom,
    ! [K: int,L: int] : ( eucl_rel_int @ K @ L @ ( product_Pair_int_int @ ( divide_divide_int @ K @ L ) @ ( modulo_modulo_int @ K @ L ) ) ) ).

% eucl_rel_int
thf(fact_4361_numeral__num__of__nat,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( numeral_numeral_nat @ ( num_of_nat @ N ) )
        = N ) ) ).

% numeral_num_of_nat
thf(fact_4362_of__nat__floor,axiom,
    ! [R: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ R )
     => ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ ( nat2 @ ( archim3151403230148437115or_rat @ R ) ) ) @ R ) ) ).

% of_nat_floor
thf(fact_4363_mod__mult2__eq_H,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( modulo8411746178871703098atural @ A @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) ) )
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ M ) @ ( modulo8411746178871703098atural @ ( divide5121882707175180666atural @ A @ ( semiri3763490453095760265atural @ M ) ) @ ( semiri3763490453095760265atural @ N ) ) ) @ ( modulo8411746178871703098atural @ A @ ( semiri3763490453095760265atural @ M ) ) ) ) ).

% mod_mult2_eq'
thf(fact_4364_mod__mult2__eq_H,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( modulo364778990260209775nteger @ A @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ M ) @ ( modulo364778990260209775nteger @ ( divide6298287555418463151nteger @ A @ ( semiri4939895301339042750nteger @ M ) ) @ ( semiri4939895301339042750nteger @ N ) ) ) @ ( modulo364778990260209775nteger @ A @ ( semiri4939895301339042750nteger @ M ) ) ) ) ).

% mod_mult2_eq'
thf(fact_4365_mod__mult2__eq_H,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( modulo_modulo_int @ A @ ( times_times_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ M ) @ ( modulo_modulo_int @ ( divide_divide_int @ A @ ( semiri1314217659103216013at_int @ M ) ) @ ( semiri1314217659103216013at_int @ N ) ) ) @ ( modulo_modulo_int @ A @ ( semiri1314217659103216013at_int @ M ) ) ) ) ).

% mod_mult2_eq'
thf(fact_4366_mod__mult2__eq_H,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( modulo_modulo_nat @ A @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( modulo_modulo_nat @ ( divide_divide_nat @ A @ ( semiri1316708129612266289at_nat @ M ) ) @ ( semiri1316708129612266289at_nat @ N ) ) ) @ ( modulo_modulo_nat @ A @ ( semiri1316708129612266289at_nat @ M ) ) ) ) ).

% mod_mult2_eq'
thf(fact_4367_one__add__floor,axiom,
    ! [X: rat] :
      ( ( plus_plus_int @ ( archim3151403230148437115or_rat @ X ) @ one_one_int )
      = ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X @ one_one_rat ) ) ) ).

% one_add_floor
thf(fact_4368_split__mod,axiom,
    ! [P: nat > $o,M: nat,N: nat] :
      ( ( P @ ( modulo_modulo_nat @ M @ N ) )
      = ( ( ( N = zero_zero_nat )
         => ( P @ M ) )
        & ( ( N != zero_zero_nat )
         => ! [I2: nat,J3: nat] :
              ( ( ord_less_nat @ J3 @ N )
             => ( ( M
                  = ( plus_plus_nat @ ( times_times_nat @ N @ I2 ) @ J3 ) )
               => ( P @ J3 ) ) ) ) ) ) ).

% split_mod
thf(fact_4369_less__divide__eq__numeral_I1_J,axiom,
    ! [W: num,B: rat,C: rat] :
      ( ( ord_less_rat @ ( numeral_numeral_rat @ W ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ ( times_times_rat @ ( numeral_numeral_rat @ W ) @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ B @ ( times_times_rat @ ( numeral_numeral_rat @ W ) @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( numeral_numeral_rat @ W ) @ zero_zero_rat ) ) ) ) ) ) ).

% less_divide_eq_numeral(1)
thf(fact_4370_divide__less__eq__numeral_I1_J,axiom,
    ! [B: rat,C: rat,W: num] :
      ( ( ord_less_rat @ ( divide_divide_rat @ B @ C ) @ ( numeral_numeral_rat @ W ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ B @ ( times_times_rat @ ( numeral_numeral_rat @ W ) @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( times_times_rat @ ( numeral_numeral_rat @ W ) @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ zero_zero_rat @ ( numeral_numeral_rat @ W ) ) ) ) ) ) ) ).

% divide_less_eq_numeral(1)
thf(fact_4371_eq__divide__eq__numeral_I2_J,axiom,
    ! [W: num,B: rat,C: rat] :
      ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) )
        = ( divide_divide_rat @ B @ C ) )
      = ( ( ( C != zero_zero_rat )
         => ( ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ C )
            = B ) )
        & ( ( C = zero_zero_rat )
         => ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) )
            = zero_zero_rat ) ) ) ) ).

% eq_divide_eq_numeral(2)
thf(fact_4372_divide__eq__eq__numeral_I2_J,axiom,
    ! [B: rat,C: rat,W: num] :
      ( ( ( divide_divide_rat @ B @ C )
        = ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) )
      = ( ( ( C != zero_zero_rat )
         => ( B
            = ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ C ) ) )
        & ( ( C = zero_zero_rat )
         => ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) )
            = zero_zero_rat ) ) ) ) ).

% divide_eq_eq_numeral(2)
thf(fact_4373_numeral__num__of__nat__unfold,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( numera5444537566228673987atural @ ( num_of_nat @ N ) )
          = one_one_Code_natural ) )
      & ( ( N != zero_zero_nat )
       => ( ( numera5444537566228673987atural @ ( num_of_nat @ N ) )
          = ( semiri3763490453095760265atural @ N ) ) ) ) ).

% numeral_num_of_nat_unfold
thf(fact_4374_numeral__num__of__nat__unfold,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( numera6620942414471956472nteger @ ( num_of_nat @ N ) )
          = one_one_Code_integer ) )
      & ( ( N != zero_zero_nat )
       => ( ( numera6620942414471956472nteger @ ( num_of_nat @ N ) )
          = ( semiri4939895301339042750nteger @ N ) ) ) ) ).

% numeral_num_of_nat_unfold
thf(fact_4375_numeral__num__of__nat__unfold,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( numeral_numeral_rat @ ( num_of_nat @ N ) )
          = one_one_rat ) )
      & ( ( N != zero_zero_nat )
       => ( ( numeral_numeral_rat @ ( num_of_nat @ N ) )
          = ( semiri681578069525770553at_rat @ N ) ) ) ) ).

% numeral_num_of_nat_unfold
thf(fact_4376_numeral__num__of__nat__unfold,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( numeral_numeral_int @ ( num_of_nat @ N ) )
          = one_one_int ) )
      & ( ( N != zero_zero_nat )
       => ( ( numeral_numeral_int @ ( num_of_nat @ N ) )
          = ( semiri1314217659103216013at_int @ N ) ) ) ) ).

% numeral_num_of_nat_unfold
thf(fact_4377_numeral__num__of__nat__unfold,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( numeral_numeral_nat @ ( num_of_nat @ N ) )
          = one_one_nat ) )
      & ( ( N != zero_zero_nat )
       => ( ( numeral_numeral_nat @ ( num_of_nat @ N ) )
          = ( semiri1316708129612266289at_nat @ N ) ) ) ) ).

% numeral_num_of_nat_unfold
thf(fact_4378_modulo__int__unfold,axiom,
    ! [L: int,K: int,N: nat,M: nat] :
      ( ( ( ( ( sgn_sgn_int @ L )
            = zero_zero_int )
          | ( ( sgn_sgn_int @ K )
            = zero_zero_int )
          | ( N = zero_zero_nat ) )
       => ( ( modulo_modulo_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
          = ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) ) )
      & ( ~ ( ( ( sgn_sgn_int @ L )
              = zero_zero_int )
            | ( ( sgn_sgn_int @ K )
              = zero_zero_int )
            | ( N = zero_zero_nat ) )
       => ( ( ( ( sgn_sgn_int @ K )
              = ( sgn_sgn_int @ L ) )
           => ( ( modulo_modulo_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ M @ N ) ) ) ) )
          & ( ( ( sgn_sgn_int @ K )
             != ( sgn_sgn_int @ L ) )
           => ( ( modulo_modulo_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( times_times_int @ ( sgn_sgn_int @ L )
                @ ( minus_minus_int
                  @ ( semiri1314217659103216013at_int
                    @ ( times_times_nat @ N
                      @ ( zero_n2687167440665602831ol_nat
                        @ ~ ( dvd_dvd_nat @ N @ M ) ) ) )
                  @ ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ M @ N ) ) ) ) ) ) ) ) ) ).

% modulo_int_unfold
thf(fact_4379_floor__unique,axiom,
    ! [Z: int,X: rat] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z ) @ X )
     => ( ( ord_less_rat @ X @ ( plus_plus_rat @ ( ring_1_of_int_rat @ Z ) @ one_one_rat ) )
       => ( ( archim3151403230148437115or_rat @ X )
          = Z ) ) ) ).

% floor_unique
thf(fact_4380_floor__eq__iff,axiom,
    ! [X: rat,A: int] :
      ( ( ( archim3151403230148437115or_rat @ X )
        = A )
      = ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ A ) @ X )
        & ( ord_less_rat @ X @ ( plus_plus_rat @ ( ring_1_of_int_rat @ A ) @ one_one_rat ) ) ) ) ).

% floor_eq_iff
thf(fact_4381_floor__split,axiom,
    ! [P: int > $o,T: rat] :
      ( ( P @ ( archim3151403230148437115or_rat @ T ) )
      = ( ! [I2: int] :
            ( ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ I2 ) @ T )
              & ( ord_less_rat @ T @ ( plus_plus_rat @ ( ring_1_of_int_rat @ I2 ) @ one_one_rat ) ) )
           => ( P @ I2 ) ) ) ) ).

% floor_split
thf(fact_4382_unique__euclidean__semiring__numeral__class_Omod__mult2__eq,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
     => ( ( modulo364778990260209775nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ ( modulo364778990260209775nteger @ ( divide6298287555418463151nteger @ A @ B ) @ C ) ) @ ( modulo364778990260209775nteger @ A @ B ) ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_mult2_eq
thf(fact_4383_unique__euclidean__semiring__numeral__class_Omod__mult2__eq,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ C )
     => ( ( modulo_modulo_nat @ A @ ( times_times_nat @ B @ C ) )
        = ( plus_plus_nat @ ( times_times_nat @ B @ ( modulo_modulo_nat @ ( divide_divide_nat @ A @ B ) @ C ) ) @ ( modulo_modulo_nat @ A @ B ) ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_mult2_eq
thf(fact_4384_unique__euclidean__semiring__numeral__class_Omod__mult2__eq,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( modulo_modulo_int @ A @ ( times_times_int @ B @ C ) )
        = ( plus_plus_int @ ( times_times_int @ B @ ( modulo_modulo_int @ ( divide_divide_int @ A @ B ) @ C ) ) @ ( modulo_modulo_int @ A @ B ) ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_mult2_eq
thf(fact_4385_le__mult__floor,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_int @ ( times_times_int @ ( archim3151403230148437115or_rat @ A ) @ ( archim3151403230148437115or_rat @ B ) ) @ ( archim3151403230148437115or_rat @ ( times_times_rat @ A @ B ) ) ) ) ) ).

% le_mult_floor
thf(fact_4386_less__floor__iff,axiom,
    ! [Z: int,X: rat] :
      ( ( ord_less_int @ Z @ ( archim3151403230148437115or_rat @ X ) )
      = ( ord_less_eq_rat @ ( plus_plus_rat @ ( ring_1_of_int_rat @ Z ) @ one_one_rat ) @ X ) ) ).

% less_floor_iff
thf(fact_4387_floor__le__iff,axiom,
    ! [X: rat,Z: int] :
      ( ( ord_less_eq_int @ ( archim3151403230148437115or_rat @ X ) @ Z )
      = ( ord_less_rat @ X @ ( plus_plus_rat @ ( ring_1_of_int_rat @ Z ) @ one_one_rat ) ) ) ).

% floor_le_iff
thf(fact_4388_le__divide__eq__numeral_I1_J,axiom,
    ! [W: num,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ ( numeral_numeral_rat @ W ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ ( times_times_rat @ ( numeral_numeral_rat @ W ) @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ B @ ( times_times_rat @ ( numeral_numeral_rat @ W ) @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( numeral_numeral_rat @ W ) @ zero_zero_rat ) ) ) ) ) ) ).

% le_divide_eq_numeral(1)
thf(fact_4389_divide__le__eq__numeral_I1_J,axiom,
    ! [B: rat,C: rat,W: num] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ ( numeral_numeral_rat @ W ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ B @ ( times_times_rat @ ( numeral_numeral_rat @ W ) @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( times_times_rat @ ( numeral_numeral_rat @ W ) @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ zero_zero_rat @ ( numeral_numeral_rat @ W ) ) ) ) ) ) ) ).

% divide_le_eq_numeral(1)
thf(fact_4390_Suc__times__mod__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
     => ( ( modulo_modulo_nat @ ( suc @ ( times_times_nat @ M @ N ) ) @ M )
        = one_one_nat ) ) ).

% Suc_times_mod_eq
thf(fact_4391_less__divide__eq__numeral_I2_J,axiom,
    ! [W: num,B: rat,C: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ B @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ zero_zero_rat ) ) ) ) ) ) ).

% less_divide_eq_numeral(2)
thf(fact_4392_divide__less__eq__numeral_I2_J,axiom,
    ! [B: rat,C: rat,W: num] :
      ( ( ord_less_rat @ ( divide_divide_rat @ B @ C ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ B @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ zero_zero_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) ) ) ) ) ) ) ).

% divide_less_eq_numeral(2)
thf(fact_4393_floor__divide__lower,axiom,
    ! [Q2: rat,P4: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Q2 )
     => ( ord_less_eq_rat @ ( times_times_rat @ ( ring_1_of_int_rat @ ( archim3151403230148437115or_rat @ ( divide_divide_rat @ P4 @ Q2 ) ) ) @ Q2 ) @ P4 ) ) ).

% floor_divide_lower
thf(fact_4394_le__mult__floor__Ints,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( member_rat @ A @ ring_1_Ints_rat )
       => ( ord_less_eq_rat @ ( ring_1_of_int_rat @ ( times_times_int @ ( archim3151403230148437115or_rat @ A ) @ ( archim3151403230148437115or_rat @ B ) ) ) @ ( ring_1_of_int_rat @ ( archim3151403230148437115or_rat @ ( times_times_rat @ A @ B ) ) ) ) ) ) ).

% le_mult_floor_Ints
thf(fact_4395_le__mult__floor__Ints,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( member_rat @ A @ ring_1_Ints_rat )
       => ( ord_less_eq_int @ ( ring_1_of_int_int @ ( times_times_int @ ( archim3151403230148437115or_rat @ A ) @ ( archim3151403230148437115or_rat @ B ) ) ) @ ( ring_1_of_int_int @ ( archim3151403230148437115or_rat @ ( times_times_rat @ A @ B ) ) ) ) ) ) ).

% le_mult_floor_Ints
thf(fact_4396_diff__numeral__special_I4_J,axiom,
    ! [M: num] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( plus_plus_num @ M @ one ) ) ) ) ).

% diff_numeral_special(4)
thf(fact_4397_diff__numeral__special_I4_J,axiom,
    ! [M: num] :
      ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ one_one_Code_integer )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( plus_plus_num @ M @ one ) ) ) ) ).

% diff_numeral_special(4)
thf(fact_4398_diff__numeral__special_I4_J,axiom,
    ! [M: num] :
      ( ( minus_minus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ one_one_rat )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( plus_plus_num @ M @ one ) ) ) ) ).

% diff_numeral_special(4)
thf(fact_4399_diff__numeral__special_I3_J,axiom,
    ! [N: num] :
      ( ( minus_minus_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ one @ N ) ) ) ).

% diff_numeral_special(3)
thf(fact_4400_diff__numeral__special_I3_J,axiom,
    ! [N: num] :
      ( ( minus_8373710615458151222nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( numera6620942414471956472nteger @ ( plus_plus_num @ one @ N ) ) ) ).

% diff_numeral_special(3)
thf(fact_4401_diff__numeral__special_I3_J,axiom,
    ! [N: num] :
      ( ( minus_minus_rat @ one_one_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( numeral_numeral_rat @ ( plus_plus_num @ one @ N ) ) ) ).

% diff_numeral_special(3)
thf(fact_4402_diff__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ N ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ N ) ) ) ) ).

% diff_numeral_special(5)
thf(fact_4403_diff__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ N ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( inc @ N ) ) ) ) ).

% diff_numeral_special(5)
thf(fact_4404_diff__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( minus_minus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( numeral_numeral_rat @ N ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( inc @ N ) ) ) ) ).

% diff_numeral_special(5)
thf(fact_4405_diff__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( minus_minus_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( numeral_numeral_int @ ( inc @ M ) ) ) ).

% diff_numeral_special(6)
thf(fact_4406_diff__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( minus_8373710615458151222nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( numera6620942414471956472nteger @ ( inc @ M ) ) ) ).

% diff_numeral_special(6)
thf(fact_4407_diff__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( minus_minus_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( numeral_numeral_rat @ ( inc @ M ) ) ) ).

% diff_numeral_special(6)
thf(fact_4408_add__neg__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ M ) ) ) ) ).

% add_neg_numeral_special(6)
thf(fact_4409_add__neg__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( inc @ M ) ) ) ) ).

% add_neg_numeral_special(6)
thf(fact_4410_add__neg__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( inc @ M ) ) ) ) ).

% add_neg_numeral_special(6)
thf(fact_4411_add__neg__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ N ) ) ) ) ).

% add_neg_numeral_special(5)
thf(fact_4412_add__neg__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( inc @ N ) ) ) ) ).

% add_neg_numeral_special(5)
thf(fact_4413_add__neg__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( inc @ N ) ) ) ) ).

% add_neg_numeral_special(5)
thf(fact_4414_prod__decode__aux_Osimps,axiom,
    ( nat_prod_decode_aux
    = ( ^ [K3: nat,M5: nat] : ( if_Pro6206227464963214023at_nat @ ( ord_less_eq_nat @ M5 @ K3 ) @ ( product_Pair_nat_nat @ M5 @ ( minus_minus_nat @ K3 @ M5 ) ) @ ( nat_prod_decode_aux @ ( suc @ K3 ) @ ( minus_minus_nat @ M5 @ ( suc @ K3 ) ) ) ) ) ) ).

% prod_decode_aux.simps
thf(fact_4415_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numera5444537566228673987atural @ N )
        = one_one_Code_natural )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_4416_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_int @ N )
        = one_one_int )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_4417_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_nat @ N )
        = one_one_nat )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_4418_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numera6620942414471956472nteger @ N )
        = one_one_Code_integer )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_4419_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_rat @ N )
        = one_one_rat )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_4420_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_Code_natural
        = ( numera5444537566228673987atural @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_4421_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_int
        = ( numeral_numeral_int @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_4422_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_nat
        = ( numeral_numeral_nat @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_4423_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_Code_integer
        = ( numera6620942414471956472nteger @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_4424_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_rat
        = ( numeral_numeral_rat @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_4425_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_le1926595141338095240atural @ ( numera5444537566228673987atural @ N ) @ one_one_Code_natural )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_4426_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ N ) @ one_one_Code_integer )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_4427_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_less_eq_rat @ ( numeral_numeral_rat @ N ) @ one_one_rat )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_4428_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_4429_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ one_one_int )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_4430_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_4431_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_4432_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_4433_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_4434_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_rat @ one_one_rat @ ( numeral_numeral_rat @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_4435_neg__one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( ( uminus_uminus_int @ one_one_int )
        = ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( N = one ) ) ).

% neg_one_eq_numeral_iff
thf(fact_4436_neg__one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( ( uminus1351360451143612070nteger @ one_one_Code_integer )
        = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( N = one ) ) ).

% neg_one_eq_numeral_iff
thf(fact_4437_neg__one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( ( uminus_uminus_rat @ one_one_rat )
        = ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( N = one ) ) ).

% neg_one_eq_numeral_iff
thf(fact_4438_numeral__eq__neg__one__iff,axiom,
    ! [N: num] :
      ( ( ( uminus_uminus_int @ ( numeral_numeral_int @ N ) )
        = ( uminus_uminus_int @ one_one_int ) )
      = ( N = one ) ) ).

% numeral_eq_neg_one_iff
thf(fact_4439_numeral__eq__neg__one__iff,axiom,
    ! [N: num] :
      ( ( ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) )
        = ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( N = one ) ) ).

% numeral_eq_neg_one_iff
thf(fact_4440_numeral__eq__neg__one__iff,axiom,
    ! [N: num] :
      ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) )
        = ( uminus_uminus_rat @ one_one_rat ) )
      = ( N = one ) ) ).

% numeral_eq_neg_one_iff
thf(fact_4441_not__neg__one__le__neg__numeral__iff,axiom,
    ! [M: num] :
      ( ( ~ ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) ) )
      = ( M != one ) ) ).

% not_neg_one_le_neg_numeral_iff
thf(fact_4442_not__neg__one__le__neg__numeral__iff,axiom,
    ! [M: num] :
      ( ( ~ ( ord_less_eq_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) ) )
      = ( M != one ) ) ).

% not_neg_one_le_neg_numeral_iff
thf(fact_4443_not__neg__one__le__neg__numeral__iff,axiom,
    ! [M: num] :
      ( ( ~ ( ord_less_eq_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) ) )
      = ( M != one ) ) ).

% not_neg_one_le_neg_numeral_iff
thf(fact_4444_neg__numeral__less__neg__one__iff,axiom,
    ! [M: num] :
      ( ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( M != one ) ) ).

% neg_numeral_less_neg_one_iff
thf(fact_4445_neg__numeral__less__neg__one__iff,axiom,
    ! [M: num] :
      ( ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( M != one ) ) ).

% neg_numeral_less_neg_one_iff
thf(fact_4446_neg__numeral__less__neg__one__iff,axiom,
    ! [M: num] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( M != one ) ) ).

% neg_numeral_less_neg_one_iff
thf(fact_4447_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ N ) )
      = ( numera5444537566228673987atural @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_4448_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_4449_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_4450_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ N ) )
      = ( numera6620942414471956472nteger @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_4451_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_rat @ one_one_rat @ ( numeral_numeral_rat @ N ) )
      = ( numeral_numeral_rat @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_4452_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_p4538020629002901425atural @ ( numera5444537566228673987atural @ N ) @ one_one_Code_natural )
      = ( numera5444537566228673987atural @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_4453_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ N ) @ one_one_int )
      = ( numeral_numeral_int @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_4454_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat )
      = ( numeral_numeral_nat @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_4455_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ N ) @ one_one_Code_integer )
      = ( numera6620942414471956472nteger @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_4456_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ N ) @ one_one_rat )
      = ( numeral_numeral_rat @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_4457_prod__decode__aux_Ocases,axiom,
    ! [X: product_prod_nat_nat] :
      ~ ! [K2: nat,M4: nat] :
          ( X
         != ( product_Pair_nat_nat @ K2 @ M4 ) ) ).

% prod_decode_aux.cases
thf(fact_4458_num_Osize_I4_J,axiom,
    ( ( size_size_num @ one )
    = zero_zero_nat ) ).

% num.size(4)
thf(fact_4459_numerals_I1_J,axiom,
    ( ( numeral_numeral_nat @ one )
    = one_one_nat ) ).

% numerals(1)
thf(fact_4460_numeral__One,axiom,
    ( ( numera5444537566228673987atural @ one )
    = one_one_Code_natural ) ).

% numeral_One
thf(fact_4461_numeral__One,axiom,
    ( ( numeral_numeral_int @ one )
    = one_one_int ) ).

% numeral_One
thf(fact_4462_numeral__One,axiom,
    ( ( numeral_numeral_nat @ one )
    = one_one_nat ) ).

% numeral_One
thf(fact_4463_numeral__One,axiom,
    ( ( numera6620942414471956472nteger @ one )
    = one_one_Code_integer ) ).

% numeral_One
thf(fact_4464_numeral__One,axiom,
    ( ( numeral_numeral_rat @ one )
    = one_one_rat ) ).

% numeral_One
thf(fact_4465_numeral__1__eq__Suc__0,axiom,
    ( ( numeral_numeral_nat @ one )
    = ( suc @ zero_zero_nat ) ) ).

% numeral_1_eq_Suc_0
thf(fact_4466_num__of__nat_Osimps_I2_J,axiom,
    ! [N: nat] :
      ( ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( num_of_nat @ ( suc @ N ) )
          = ( inc @ ( num_of_nat @ N ) ) ) )
      & ( ~ ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( num_of_nat @ ( suc @ N ) )
          = one ) ) ) ).

% num_of_nat.simps(2)
thf(fact_4467_num__of__nat_Osimps_I1_J,axiom,
    ( ( num_of_nat @ zero_zero_nat )
    = one ) ).

% num_of_nat.simps(1)
thf(fact_4468_uminus__numeral__One,axiom,
    ( ( uminus_uminus_int @ ( numeral_numeral_int @ one ) )
    = ( uminus_uminus_int @ one_one_int ) ) ).

% uminus_numeral_One
thf(fact_4469_uminus__numeral__One,axiom,
    ( ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ one ) )
    = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% uminus_numeral_One
thf(fact_4470_uminus__numeral__One,axiom,
    ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ one ) )
    = ( uminus_uminus_rat @ one_one_rat ) ) ).

% uminus_numeral_One
thf(fact_4471_cong__exp__iff__simps_I1_J,axiom,
    ! [N: num] :
      ( ( modulo_modulo_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ one ) )
      = zero_zero_int ) ).

% cong_exp_iff_simps(1)
thf(fact_4472_cong__exp__iff__simps_I1_J,axiom,
    ! [N: num] :
      ( ( modulo_modulo_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ one ) )
      = zero_zero_nat ) ).

% cong_exp_iff_simps(1)
thf(fact_4473_cong__exp__iff__simps_I1_J,axiom,
    ! [N: num] :
      ( ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ N ) @ ( numera6620942414471956472nteger @ one ) )
      = zero_z3403309356797280102nteger ) ).

% cong_exp_iff_simps(1)
thf(fact_4474_Suc__nat__number__of__add,axiom,
    ! [V: num,N: nat] :
      ( ( suc @ ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ N ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ one ) ) @ N ) ) ).

% Suc_nat_number_of_add
thf(fact_4475_num__of__nat__One,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ one_one_nat )
     => ( ( num_of_nat @ N )
        = one ) ) ).

% num_of_nat_One
thf(fact_4476_numeral__inc,axiom,
    ! [X: num] :
      ( ( numera5444537566228673987atural @ ( inc @ X ) )
      = ( plus_p4538020629002901425atural @ ( numera5444537566228673987atural @ X ) @ one_one_Code_natural ) ) ).

% numeral_inc
thf(fact_4477_numeral__inc,axiom,
    ! [X: num] :
      ( ( numeral_numeral_int @ ( inc @ X ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ X ) @ one_one_int ) ) ).

% numeral_inc
thf(fact_4478_numeral__inc,axiom,
    ! [X: num] :
      ( ( numeral_numeral_nat @ ( inc @ X ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ X ) @ one_one_nat ) ) ).

% numeral_inc
thf(fact_4479_numeral__inc,axiom,
    ! [X: num] :
      ( ( numera6620942414471956472nteger @ ( inc @ X ) )
      = ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ X ) @ one_one_Code_integer ) ) ).

% numeral_inc
thf(fact_4480_numeral__inc,axiom,
    ! [X: num] :
      ( ( numeral_numeral_rat @ ( inc @ X ) )
      = ( plus_plus_rat @ ( numeral_numeral_rat @ X ) @ one_one_rat ) ) ).

% numeral_inc
thf(fact_4481_prod__decode__aux_Oelims,axiom,
    ! [X: nat,Xa: nat,Y3: product_prod_nat_nat] :
      ( ( ( nat_prod_decode_aux @ X @ Xa )
        = Y3 )
     => ( ( ( ord_less_eq_nat @ Xa @ X )
         => ( Y3
            = ( product_Pair_nat_nat @ Xa @ ( minus_minus_nat @ X @ Xa ) ) ) )
        & ( ~ ( ord_less_eq_nat @ Xa @ X )
         => ( Y3
            = ( nat_prod_decode_aux @ ( suc @ X ) @ ( minus_minus_nat @ Xa @ ( suc @ X ) ) ) ) ) ) ) ).

% prod_decode_aux.elims
thf(fact_4482_pochhammer__double,axiom,
    ! [Z: rat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ Z ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( times_times_rat @ ( times_times_rat @ ( semiri681578069525770553at_rat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) @ ( comm_s4028243227959126397er_rat @ Z @ N ) ) @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ Z @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) @ N ) ) ) ).

% pochhammer_double
thf(fact_4483_even__succ__mod__exp,axiom,
    ! [A: code_natural,N: nat] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ one_one_Code_natural @ A ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) )
          = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( modulo8411746178871703098atural @ A @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) ) ) ) ) ) ).

% even_succ_mod_exp
thf(fact_4484_even__succ__mod__exp,axiom,
    ! [A: int,N: nat] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( modulo_modulo_int @ ( plus_plus_int @ one_one_int @ A ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
          = ( plus_plus_int @ one_one_int @ ( modulo_modulo_int @ A @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ) ) ).

% even_succ_mod_exp
thf(fact_4485_even__succ__mod__exp,axiom,
    ! [A: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( modulo_modulo_nat @ ( plus_plus_nat @ one_one_nat @ A ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
          = ( plus_plus_nat @ one_one_nat @ ( modulo_modulo_nat @ A @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ) ) ).

% even_succ_mod_exp
thf(fact_4486_even__succ__mod__exp,axiom,
    ! [A: code_integer,N: nat] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ A ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) )
          = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( modulo364778990260209775nteger @ A @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) ) ) ) ) ) ).

% even_succ_mod_exp
thf(fact_4487_even__succ__div__exp,axiom,
    ! [A: int,N: nat] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( divide_divide_int @ ( plus_plus_int @ one_one_int @ A ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
          = ( divide_divide_int @ A @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% even_succ_div_exp
thf(fact_4488_even__succ__div__exp,axiom,
    ! [A: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( divide_divide_nat @ ( plus_plus_nat @ one_one_nat @ A ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
          = ( divide_divide_nat @ A @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% even_succ_div_exp
thf(fact_4489_even__succ__div__exp,axiom,
    ! [A: code_integer,N: nat] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ A ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) )
          = ( divide6298287555418463151nteger @ A @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% even_succ_div_exp
thf(fact_4490_even__succ__div__exp,axiom,
    ! [A: code_natural,N: nat] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ one_one_Code_natural @ A ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) )
          = ( divide5121882707175180666atural @ A @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% even_succ_div_exp
thf(fact_4491_neg__eucl__rel__int__mult__2,axiom,
    ! [B: int,A: int,Q2: int,R: int] :
      ( ( ord_less_eq_int @ B @ zero_zero_int )
     => ( ( eucl_rel_int @ ( plus_plus_int @ A @ one_one_int ) @ B @ ( product_Pair_int_int @ Q2 @ R ) )
       => ( eucl_rel_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) @ ( product_Pair_int_int @ Q2 @ ( minus_minus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ R ) @ one_one_int ) ) ) ) ) ).

% neg_eucl_rel_int_mult_2
thf(fact_4492_fact__double,axiom,
    ! [N: nat] :
      ( ( semiri773545260158071498ct_rat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( times_times_rat @ ( times_times_rat @ ( power_power_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) @ ( comm_s4028243227959126397er_rat @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) @ N ) ) @ ( semiri773545260158071498ct_rat @ N ) ) ) ).

% fact_double
thf(fact_4493_even__mult__exp__div__exp__iff,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ ( times_times_int @ A @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ M ) ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) )
      = ( ( ord_less_nat @ N @ M )
        | ( ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N )
          = zero_zero_int )
        | ( ( ord_less_eq_nat @ M @ N )
          & ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ A @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% even_mult_exp_div_exp_iff
thf(fact_4494_even__mult__exp__div__exp__iff,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( times_times_nat @ A @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
      = ( ( ord_less_nat @ N @ M )
        | ( ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          = zero_zero_nat )
        | ( ( ord_less_eq_nat @ M @ N )
          & ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ A @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% even_mult_exp_div_exp_iff
thf(fact_4495_even__mult__exp__div__exp__iff,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ M ) ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) ) )
      = ( ( ord_less_nat @ N @ M )
        | ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N )
          = zero_z3403309356797280102nteger )
        | ( ( ord_less_eq_nat @ M @ N )
          & ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( divide6298287555418463151nteger @ A @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% even_mult_exp_div_exp_iff
thf(fact_4496_even__mult__exp__div__exp__iff,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ M ) ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) ) )
      = ( ( ord_less_nat @ N @ M )
        | ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N )
          = zero_z2226904508553997617atural )
        | ( ( ord_less_eq_nat @ M @ N )
          & ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( divide5121882707175180666atural @ A @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% even_mult_exp_div_exp_iff
thf(fact_4497_divmod__digit__1_I1_J,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
       => ( ( ord_le3102999989581377725nteger @ B @ ( modulo364778990260209775nteger @ A @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) ) )
         => ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( divide6298287555418463151nteger @ A @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) ) ) @ one_one_Code_integer )
            = ( divide6298287555418463151nteger @ A @ B ) ) ) ) ) ).

% divmod_digit_1(1)
thf(fact_4498_divmod__digit__1_I1_J,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ( ord_less_eq_nat @ B @ ( modulo_modulo_nat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) )
         => ( ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) ) @ one_one_nat )
            = ( divide_divide_nat @ A @ B ) ) ) ) ) ).

% divmod_digit_1(1)
thf(fact_4499_divmod__digit__1_I1_J,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ( ord_less_eq_int @ B @ ( modulo_modulo_int @ A @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) )
         => ( ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ A @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) ) @ one_one_int )
            = ( divide_divide_int @ A @ B ) ) ) ) ) ).

% divmod_digit_1(1)
thf(fact_4500_verit__eq__simplify_I8_J,axiom,
    ! [X2: num,Y2: num] :
      ( ( ( bit0 @ X2 )
        = ( bit0 @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% verit_eq_simplify(8)
thf(fact_4501_one__add__one,axiom,
    ( ( plus_p4538020629002901425atural @ one_one_Code_natural @ one_one_Code_natural )
    = ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_4502_one__add__one,axiom,
    ( ( plus_plus_int @ one_one_int @ one_one_int )
    = ( numeral_numeral_int @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_4503_one__add__one,axiom,
    ( ( plus_plus_nat @ one_one_nat @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_4504_one__add__one,axiom,
    ( ( plus_p5714425477246183910nteger @ one_one_Code_integer @ one_one_Code_integer )
    = ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_4505_one__add__one,axiom,
    ( ( plus_plus_rat @ one_one_rat @ one_one_rat )
    = ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_4506_odd__add,axiom,
    ! [A: int,B: int] :
      ( ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ A @ B ) ) )
      = ( ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
       != ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) ) ) ).

% odd_add
thf(fact_4507_odd__add,axiom,
    ! [A: nat,B: nat] :
      ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ A @ B ) ) )
      = ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) )
       != ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) ) ) ).

% odd_add
thf(fact_4508_odd__add,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( plus_p5714425477246183910nteger @ A @ B ) ) )
      = ( ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) )
       != ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) ) ) ) ).

% odd_add
thf(fact_4509_even__add,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ A @ B ) )
      = ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
        = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) ) ).

% even_add
thf(fact_4510_even__add,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ A @ B ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) ) ).

% even_add
thf(fact_4511_even__add,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
        = ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) ) ) ).

% even_add
thf(fact_4512_one__mod__two__eq__one,axiom,
    ( ( modulo8411746178871703098atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
    = one_one_Code_natural ) ).

% one_mod_two_eq_one
thf(fact_4513_one__mod__two__eq__one,axiom,
    ( ( modulo_modulo_int @ one_one_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
    = one_one_int ) ).

% one_mod_two_eq_one
thf(fact_4514_one__mod__two__eq__one,axiom,
    ( ( modulo_modulo_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_nat ) ).

% one_mod_two_eq_one
thf(fact_4515_one__mod__two__eq__one,axiom,
    ( ( modulo364778990260209775nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
    = one_one_Code_integer ) ).

% one_mod_two_eq_one
thf(fact_4516_bits__one__mod__two__eq__one,axiom,
    ( ( modulo8411746178871703098atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
    = one_one_Code_natural ) ).

% bits_one_mod_two_eq_one
thf(fact_4517_bits__one__mod__two__eq__one,axiom,
    ( ( modulo_modulo_int @ one_one_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
    = one_one_int ) ).

% bits_one_mod_two_eq_one
thf(fact_4518_bits__one__mod__two__eq__one,axiom,
    ( ( modulo_modulo_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_nat ) ).

% bits_one_mod_two_eq_one
thf(fact_4519_bits__one__mod__two__eq__one,axiom,
    ( ( modulo364778990260209775nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
    = one_one_Code_integer ) ).

% bits_one_mod_two_eq_one
thf(fact_4520_zero__eq__power2,axiom,
    ! [A: code_integer] :
      ( ( ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% zero_eq_power2
thf(fact_4521_zero__eq__power2,axiom,
    ! [A: rat] :
      ( ( ( power_power_rat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% zero_eq_power2
thf(fact_4522_zero__eq__power2,axiom,
    ! [A: code_natural] :
      ( ( ( power_7079662738309270450atural @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = zero_z2226904508553997617atural )
      = ( A = zero_z2226904508553997617atural ) ) ).

% zero_eq_power2
thf(fact_4523_zero__eq__power2,axiom,
    ! [A: nat] :
      ( ( ( power_power_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = zero_zero_nat )
      = ( A = zero_zero_nat ) ) ).

% zero_eq_power2
thf(fact_4524_zero__eq__power2,axiom,
    ! [A: int] :
      ( ( ( power_power_int @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% zero_eq_power2
thf(fact_4525_add__2__eq__Suc_H,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( suc @ ( suc @ N ) ) ) ).

% add_2_eq_Suc'
thf(fact_4526_add__2__eq__Suc,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
      = ( suc @ ( suc @ N ) ) ) ).

% add_2_eq_Suc
thf(fact_4527_Suc__1,axiom,
    ( ( suc @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% Suc_1
thf(fact_4528_add__self__div__2,axiom,
    ! [M: nat] :
      ( ( divide_divide_nat @ ( plus_plus_nat @ M @ M ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = M ) ).

% add_self_div_2
thf(fact_4529_dbl__simps_I3_J,axiom,
    ( ( neg_numeral_dbl_int @ one_one_int )
    = ( numeral_numeral_int @ ( bit0 @ one ) ) ) ).

% dbl_simps(3)
thf(fact_4530_dbl__simps_I3_J,axiom,
    ( ( neg_nu8804712462038260780nteger @ one_one_Code_integer )
    = ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ).

% dbl_simps(3)
thf(fact_4531_dbl__simps_I3_J,axiom,
    ( ( neg_numeral_dbl_rat @ one_one_rat )
    = ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ).

% dbl_simps(3)
thf(fact_4532_bits__1__div__2,axiom,
    ( ( divide_divide_int @ one_one_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
    = zero_zero_int ) ).

% bits_1_div_2
thf(fact_4533_bits__1__div__2,axiom,
    ( ( divide_divide_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = zero_zero_nat ) ).

% bits_1_div_2
thf(fact_4534_bits__1__div__2,axiom,
    ( ( divide6298287555418463151nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
    = zero_z3403309356797280102nteger ) ).

% bits_1_div_2
thf(fact_4535_bits__1__div__2,axiom,
    ( ( divide5121882707175180666atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
    = zero_z2226904508553997617atural ) ).

% bits_1_div_2
thf(fact_4536_one__div__two__eq__zero,axiom,
    ( ( divide_divide_int @ one_one_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
    = zero_zero_int ) ).

% one_div_two_eq_zero
thf(fact_4537_one__div__two__eq__zero,axiom,
    ( ( divide_divide_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = zero_zero_nat ) ).

% one_div_two_eq_zero
thf(fact_4538_one__div__two__eq__zero,axiom,
    ( ( divide6298287555418463151nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
    = zero_z3403309356797280102nteger ) ).

% one_div_two_eq_zero
thf(fact_4539_one__div__two__eq__zero,axiom,
    ( ( divide5121882707175180666atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
    = zero_z2226904508553997617atural ) ).

% one_div_two_eq_zero
thf(fact_4540_add__neg__numeral__special_I9_J,axiom,
    ( ( plus_plus_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ one_one_int ) )
    = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% add_neg_numeral_special(9)
thf(fact_4541_add__neg__numeral__special_I9_J,axiom,
    ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ).

% add_neg_numeral_special(9)
thf(fact_4542_add__neg__numeral__special_I9_J,axiom,
    ( ( plus_plus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( uminus_uminus_rat @ one_one_rat ) )
    = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) ).

% add_neg_numeral_special(9)
thf(fact_4543_diff__numeral__special_I11_J,axiom,
    ( ( minus_minus_int @ one_one_int @ ( uminus_uminus_int @ one_one_int ) )
    = ( numeral_numeral_int @ ( bit0 @ one ) ) ) ).

% diff_numeral_special(11)
thf(fact_4544_diff__numeral__special_I11_J,axiom,
    ( ( minus_8373710615458151222nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ).

% diff_numeral_special(11)
thf(fact_4545_diff__numeral__special_I11_J,axiom,
    ( ( minus_minus_rat @ one_one_rat @ ( uminus_uminus_rat @ one_one_rat ) )
    = ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ).

% diff_numeral_special(11)
thf(fact_4546_diff__numeral__special_I10_J,axiom,
    ( ( minus_minus_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int )
    = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% diff_numeral_special(10)
thf(fact_4547_diff__numeral__special_I10_J,axiom,
    ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ one_one_Code_integer )
    = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ).

% diff_numeral_special(10)
thf(fact_4548_diff__numeral__special_I10_J,axiom,
    ( ( minus_minus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ one_one_rat )
    = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) ).

% diff_numeral_special(10)
thf(fact_4549_even__plus__one__iff,axiom,
    ! [A: code_natural] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( plus_p4538020629002901425atural @ A @ one_one_Code_natural ) )
      = ( ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_plus_one_iff
thf(fact_4550_even__plus__one__iff,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ A @ one_one_int ) )
      = ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_plus_one_iff
thf(fact_4551_even__plus__one__iff,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ A @ one_one_nat ) )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_plus_one_iff
thf(fact_4552_even__plus__one__iff,axiom,
    ! [A: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( plus_p5714425477246183910nteger @ A @ one_one_Code_integer ) )
      = ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_plus_one_iff
thf(fact_4553_even__diff,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( minus_minus_int @ A @ B ) )
      = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ A @ B ) ) ) ).

% even_diff
thf(fact_4554_even__diff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ).

% even_diff
thf(fact_4555_not__mod__2__eq__1__eq__0,axiom,
    ! [A: code_natural] :
      ( ( ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
       != one_one_Code_natural )
      = ( ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
        = zero_z2226904508553997617atural ) ) ).

% not_mod_2_eq_1_eq_0
thf(fact_4556_not__mod__2__eq__1__eq__0,axiom,
    ! [A: int] :
      ( ( ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
       != one_one_int )
      = ( ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
        = zero_zero_int ) ) ).

% not_mod_2_eq_1_eq_0
thf(fact_4557_not__mod__2__eq__1__eq__0,axiom,
    ! [A: nat] :
      ( ( ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
       != one_one_nat )
      = ( ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = zero_zero_nat ) ) ).

% not_mod_2_eq_1_eq_0
thf(fact_4558_not__mod__2__eq__1__eq__0,axiom,
    ! [A: code_integer] :
      ( ( ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
       != one_one_Code_integer )
      = ( ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
        = zero_z3403309356797280102nteger ) ) ).

% not_mod_2_eq_1_eq_0
thf(fact_4559_not__mod__2__eq__0__eq__1,axiom,
    ! [A: code_natural] :
      ( ( ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
       != zero_z2226904508553997617atural )
      = ( ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
        = one_one_Code_natural ) ) ).

% not_mod_2_eq_0_eq_1
thf(fact_4560_not__mod__2__eq__0__eq__1,axiom,
    ! [A: int] :
      ( ( ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
       != zero_zero_int )
      = ( ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
        = one_one_int ) ) ).

% not_mod_2_eq_0_eq_1
thf(fact_4561_not__mod__2__eq__0__eq__1,axiom,
    ! [A: nat] :
      ( ( ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
       != zero_zero_nat )
      = ( ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_nat ) ) ).

% not_mod_2_eq_0_eq_1
thf(fact_4562_not__mod__2__eq__0__eq__1,axiom,
    ! [A: code_integer] :
      ( ( ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
       != zero_z3403309356797280102nteger )
      = ( ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
        = one_one_Code_integer ) ) ).

% not_mod_2_eq_0_eq_1
thf(fact_4563_minus__1__div__2__eq,axiom,
    ( ( divide_divide_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
    = ( uminus_uminus_int @ one_one_int ) ) ).

% minus_1_div_2_eq
thf(fact_4564_minus__1__div__2__eq,axiom,
    ( ( divide6298287555418463151nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
    = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% minus_1_div_2_eq
thf(fact_4565_power2__less__eq__zero__iff,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% power2_less_eq_zero_iff
thf(fact_4566_power2__less__eq__zero__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% power2_less_eq_zero_iff
thf(fact_4567_power2__less__eq__zero__iff,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% power2_less_eq_zero_iff
thf(fact_4568_power2__eq__iff__nonneg,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y3 )
       => ( ( ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
            = ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
          = ( X = Y3 ) ) ) ) ).

% power2_eq_iff_nonneg
thf(fact_4569_power2__eq__iff__nonneg,axiom,
    ! [X: code_natural,Y3: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ X )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ Y3 )
       => ( ( ( power_7079662738309270450atural @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
            = ( power_7079662738309270450atural @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
          = ( X = Y3 ) ) ) ) ).

% power2_eq_iff_nonneg
thf(fact_4570_power2__eq__iff__nonneg,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
       => ( ( ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
            = ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
          = ( X = Y3 ) ) ) ) ).

% power2_eq_iff_nonneg
thf(fact_4571_power2__eq__iff__nonneg,axiom,
    ! [X: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ X )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y3 )
       => ( ( ( power_power_nat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
            = ( power_power_nat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
          = ( X = Y3 ) ) ) ) ).

% power2_eq_iff_nonneg
thf(fact_4572_power2__eq__iff__nonneg,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
       => ( ( ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
            = ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
          = ( X = Y3 ) ) ) ) ).

% power2_eq_iff_nonneg
thf(fact_4573_zero__less__power2,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( A != zero_z3403309356797280102nteger ) ) ).

% zero_less_power2
thf(fact_4574_zero__less__power2,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( A != zero_zero_rat ) ) ).

% zero_less_power2
thf(fact_4575_zero__less__power2,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( A != zero_zero_int ) ) ).

% zero_less_power2
thf(fact_4576_minus__1__mod__2__eq,axiom,
    ( ( modulo_modulo_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
    = one_one_int ) ).

% minus_1_mod_2_eq
thf(fact_4577_minus__1__mod__2__eq,axiom,
    ( ( modulo364778990260209775nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
    = one_one_Code_integer ) ).

% minus_1_mod_2_eq
thf(fact_4578_bits__minus__1__mod__2__eq,axiom,
    ( ( modulo_modulo_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
    = one_one_int ) ).

% bits_minus_1_mod_2_eq
thf(fact_4579_bits__minus__1__mod__2__eq,axiom,
    ( ( modulo364778990260209775nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
    = one_one_Code_integer ) ).

% bits_minus_1_mod_2_eq
thf(fact_4580_of__bool__half__eq__0,axiom,
    ! [B: $o] :
      ( ( divide6298287555418463151nteger @ ( zero_n356916108424825756nteger @ B ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
      = zero_z3403309356797280102nteger ) ).

% of_bool_half_eq_0
thf(fact_4581_of__bool__half__eq__0,axiom,
    ! [B: $o] :
      ( ( divide5121882707175180666atural @ ( zero_n8403883297036319079atural @ B ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
      = zero_z2226904508553997617atural ) ).

% of_bool_half_eq_0
thf(fact_4582_of__bool__half__eq__0,axiom,
    ! [B: $o] :
      ( ( divide_divide_int @ ( zero_n2684676970156552555ol_int @ B ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
      = zero_zero_int ) ).

% of_bool_half_eq_0
thf(fact_4583_of__bool__half__eq__0,axiom,
    ! [B: $o] :
      ( ( divide_divide_nat @ ( zero_n2687167440665602831ol_nat @ B ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = zero_zero_nat ) ).

% of_bool_half_eq_0
thf(fact_4584_not__mod2__eq__Suc__0__eq__0,axiom,
    ! [N: nat] :
      ( ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
       != ( suc @ zero_zero_nat ) )
      = ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = zero_zero_nat ) ) ).

% not_mod2_eq_Suc_0_eq_0
thf(fact_4585_add__self__mod__2,axiom,
    ! [M: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ M @ M ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = zero_zero_nat ) ).

% add_self_mod_2
thf(fact_4586_dbl__simps_I4_J,axiom,
    ( ( neg_numeral_dbl_int @ ( uminus_uminus_int @ one_one_int ) )
    = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% dbl_simps(4)
thf(fact_4587_dbl__simps_I4_J,axiom,
    ( ( neg_nu8804712462038260780nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ).

% dbl_simps(4)
thf(fact_4588_dbl__simps_I4_J,axiom,
    ( ( neg_numeral_dbl_rat @ ( uminus_uminus_rat @ one_one_rat ) )
    = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) ).

% dbl_simps(4)
thf(fact_4589_even__succ__div__2,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ( ( divide_divide_int @ ( plus_plus_int @ one_one_int @ A ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
        = ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ).

% even_succ_div_2
thf(fact_4590_even__succ__div__2,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ one_one_nat @ A ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% even_succ_div_2
thf(fact_4591_even__succ__div__2,axiom,
    ! [A: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ A ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
        = ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ).

% even_succ_div_2
thf(fact_4592_even__succ__div__2,axiom,
    ! [A: code_natural] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ one_one_Code_natural @ A ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
        = ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ).

% even_succ_div_2
thf(fact_4593_odd__succ__div__two,axiom,
    ! [A: int] :
      ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ( ( divide_divide_int @ ( plus_plus_int @ A @ one_one_int ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
        = ( plus_plus_int @ ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ) ).

% odd_succ_div_two
thf(fact_4594_odd__succ__div__two,axiom,
    ! [A: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( plus_plus_nat @ ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ) ).

% odd_succ_div_two
thf(fact_4595_odd__succ__div__two,axiom,
    ! [A: code_integer] :
      ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
        = ( plus_p5714425477246183910nteger @ ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ one_one_Code_integer ) ) ) ).

% odd_succ_div_two
thf(fact_4596_odd__succ__div__two,axiom,
    ! [A: code_natural] :
      ( ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ one_one_Code_natural ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
        = ( plus_p4538020629002901425atural @ ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) @ one_one_Code_natural ) ) ) ).

% odd_succ_div_two
thf(fact_4597_even__succ__div__two,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ( ( divide_divide_int @ ( plus_plus_int @ A @ one_one_int ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
        = ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ).

% even_succ_div_two
thf(fact_4598_even__succ__div__two,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% even_succ_div_two
thf(fact_4599_even__succ__div__two,axiom,
    ! [A: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
        = ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ).

% even_succ_div_two
thf(fact_4600_even__succ__div__two,axiom,
    ! [A: code_natural] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ one_one_Code_natural ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
        = ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ).

% even_succ_div_two
thf(fact_4601_even__power,axiom,
    ! [A: int,N: nat] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( power_power_int @ A @ N ) )
      = ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% even_power
thf(fact_4602_even__power,axiom,
    ! [A: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( power_power_nat @ A @ N ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% even_power
thf(fact_4603_even__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( power_8256067586552552935nteger @ A @ N ) )
      = ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% even_power
thf(fact_4604_zero__le__power__eq__numeral,axiom,
    ! [A: code_integer,W: num] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ W ) ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ) ) ).

% zero_le_power_eq_numeral
thf(fact_4605_zero__le__power__eq__numeral,axiom,
    ! [A: rat,W: num] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ W ) ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
          & ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ) ) ).

% zero_le_power_eq_numeral
thf(fact_4606_zero__le__power__eq__numeral,axiom,
    ! [A: int,W: num] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ W ) ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
          & ( ord_less_eq_int @ zero_zero_int @ A ) ) ) ) ).

% zero_le_power_eq_numeral
thf(fact_4607_power__less__zero__eq__numeral,axiom,
    ! [A: code_integer,W: num] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ W ) ) @ zero_z3403309356797280102nteger )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
        & ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ) ).

% power_less_zero_eq_numeral
thf(fact_4608_power__less__zero__eq__numeral,axiom,
    ! [A: rat,W: num] :
      ( ( ord_less_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ W ) ) @ zero_zero_rat )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
        & ( ord_less_rat @ A @ zero_zero_rat ) ) ) ).

% power_less_zero_eq_numeral
thf(fact_4609_power__less__zero__eq__numeral,axiom,
    ! [A: int,W: num] :
      ( ( ord_less_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ W ) ) @ zero_zero_int )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
        & ( ord_less_int @ A @ zero_zero_int ) ) ) ).

% power_less_zero_eq_numeral
thf(fact_4610_power__less__zero__eq,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N ) @ zero_z3403309356797280102nteger )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
        & ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ) ).

% power_less_zero_eq
thf(fact_4611_power__less__zero__eq,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ ( power_power_rat @ A @ N ) @ zero_zero_rat )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
        & ( ord_less_rat @ A @ zero_zero_rat ) ) ) ).

% power_less_zero_eq
thf(fact_4612_power__less__zero__eq,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ ( power_power_int @ A @ N ) @ zero_zero_int )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
        & ( ord_less_int @ A @ zero_zero_int ) ) ) ).

% power_less_zero_eq
thf(fact_4613_power__minus1__even,axiom,
    ! [N: nat] :
      ( ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = one_one_int ) ).

% power_minus1_even
thf(fact_4614_power__minus1__even,axiom,
    ! [N: nat] :
      ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = one_one_Code_integer ) ).

% power_minus1_even
thf(fact_4615_power__minus1__even,axiom,
    ! [N: nat] :
      ( ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = one_one_rat ) ).

% power_minus1_even
thf(fact_4616_neg__one__odd__power,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N )
        = ( uminus_uminus_int @ one_one_int ) ) ) ).

% neg_one_odd_power
thf(fact_4617_neg__one__odd__power,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N )
        = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ) ).

% neg_one_odd_power
thf(fact_4618_neg__one__odd__power,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N )
        = ( uminus_uminus_rat @ one_one_rat ) ) ) ).

% neg_one_odd_power
thf(fact_4619_neg__one__even__power,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N )
        = one_one_int ) ) ).

% neg_one_even_power
thf(fact_4620_neg__one__even__power,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N )
        = one_one_Code_integer ) ) ).

% neg_one_even_power
thf(fact_4621_neg__one__even__power,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N )
        = one_one_rat ) ) ).

% neg_one_even_power
thf(fact_4622_odd__Suc__minus__one,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
        = N ) ) ).

% odd_Suc_minus_one
thf(fact_4623_even__diff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ M @ N ) )
      = ( ( ord_less_nat @ M @ N )
        | ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) ) ) ) ).

% even_diff_nat
thf(fact_4624_mod2__gr__0,axiom,
    ! [M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_nat ) ) ).

% mod2_gr_0
thf(fact_4625_odd__two__times__div__two__succ,axiom,
    ! [A: int] :
      ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ( ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) @ one_one_int )
        = A ) ) ).

% odd_two_times_div_two_succ
thf(fact_4626_odd__two__times__div__two__succ,axiom,
    ! [A: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ( ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ one_one_nat )
        = A ) ) ).

% odd_two_times_div_two_succ
thf(fact_4627_odd__two__times__div__two__succ,axiom,
    ! [A: code_integer] :
      ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
     => ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) @ one_one_Code_integer )
        = A ) ) ).

% odd_two_times_div_two_succ
thf(fact_4628_odd__two__times__div__two__succ,axiom,
    ! [A: code_natural] :
      ( ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
     => ( ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) @ one_one_Code_natural )
        = A ) ) ).

% odd_two_times_div_two_succ
thf(fact_4629_semiring__parity__class_Oeven__mask__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( minus_7197305767214868737atural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) @ one_one_Code_natural ) )
      = ( N = zero_zero_nat ) ) ).

% semiring_parity_class.even_mask_iff
thf(fact_4630_semiring__parity__class_Oeven__mask__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ one_one_int ) )
      = ( N = zero_zero_nat ) ) ).

% semiring_parity_class.even_mask_iff
thf(fact_4631_semiring__parity__class_Oeven__mask__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ one_one_nat ) )
      = ( N = zero_zero_nat ) ) ).

% semiring_parity_class.even_mask_iff
thf(fact_4632_semiring__parity__class_Oeven__mask__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) @ one_one_Code_integer ) )
      = ( N = zero_zero_nat ) ) ).

% semiring_parity_class.even_mask_iff
thf(fact_4633_zero__less__power__eq__numeral,axiom,
    ! [A: code_integer,W: num] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ W ) ) )
      = ( ( ( numeral_numeral_nat @ W )
          = zero_zero_nat )
        | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
          & ( A != zero_z3403309356797280102nteger ) )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
          & ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A ) ) ) ) ).

% zero_less_power_eq_numeral
thf(fact_4634_zero__less__power__eq__numeral,axiom,
    ! [A: rat,W: num] :
      ( ( ord_less_rat @ zero_zero_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ W ) ) )
      = ( ( ( numeral_numeral_nat @ W )
          = zero_zero_nat )
        | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
          & ( A != zero_zero_rat ) )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
          & ( ord_less_rat @ zero_zero_rat @ A ) ) ) ) ).

% zero_less_power_eq_numeral
thf(fact_4635_zero__less__power__eq__numeral,axiom,
    ! [A: int,W: num] :
      ( ( ord_less_int @ zero_zero_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ W ) ) )
      = ( ( ( numeral_numeral_nat @ W )
          = zero_zero_nat )
        | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
          & ( A != zero_zero_int ) )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
          & ( ord_less_int @ zero_zero_int @ A ) ) ) ) ).

% zero_less_power_eq_numeral
thf(fact_4636_bits__1__div__exp,axiom,
    ! [N: nat] :
      ( ( divide6298287555418463151nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n356916108424825756nteger @ ( N = zero_zero_nat ) ) ) ).

% bits_1_div_exp
thf(fact_4637_bits__1__div__exp,axiom,
    ! [N: nat] :
      ( ( divide5121882707175180666atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n8403883297036319079atural @ ( N = zero_zero_nat ) ) ) ).

% bits_1_div_exp
thf(fact_4638_bits__1__div__exp,axiom,
    ! [N: nat] :
      ( ( divide_divide_int @ one_one_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n2684676970156552555ol_int @ ( N = zero_zero_nat ) ) ) ).

% bits_1_div_exp
thf(fact_4639_bits__1__div__exp,axiom,
    ! [N: nat] :
      ( ( divide_divide_nat @ one_one_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n2687167440665602831ol_nat @ ( N = zero_zero_nat ) ) ) ).

% bits_1_div_exp
thf(fact_4640_one__div__2__pow__eq,axiom,
    ! [N: nat] :
      ( ( divide6298287555418463151nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n356916108424825756nteger @ ( N = zero_zero_nat ) ) ) ).

% one_div_2_pow_eq
thf(fact_4641_one__div__2__pow__eq,axiom,
    ! [N: nat] :
      ( ( divide5121882707175180666atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n8403883297036319079atural @ ( N = zero_zero_nat ) ) ) ).

% one_div_2_pow_eq
thf(fact_4642_one__div__2__pow__eq,axiom,
    ! [N: nat] :
      ( ( divide_divide_int @ one_one_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n2684676970156552555ol_int @ ( N = zero_zero_nat ) ) ) ).

% one_div_2_pow_eq
thf(fact_4643_one__div__2__pow__eq,axiom,
    ! [N: nat] :
      ( ( divide_divide_nat @ one_one_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n2687167440665602831ol_nat @ ( N = zero_zero_nat ) ) ) ).

% one_div_2_pow_eq
thf(fact_4644_odd__two__times__div__two__nat,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = ( minus_minus_nat @ N @ one_one_nat ) ) ) ).

% odd_two_times_div_two_nat
thf(fact_4645_power__le__zero__eq__numeral,axiom,
    ! [A: code_integer,W: num] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ W ) ) @ zero_z3403309356797280102nteger )
      = ( ( ord_less_nat @ zero_zero_nat @ ( numeral_numeral_nat @ W ) )
        & ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
            & ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) )
          | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
            & ( A = zero_z3403309356797280102nteger ) ) ) ) ) ).

% power_le_zero_eq_numeral
thf(fact_4646_power__le__zero__eq__numeral,axiom,
    ! [A: rat,W: num] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ W ) ) @ zero_zero_rat )
      = ( ( ord_less_nat @ zero_zero_nat @ ( numeral_numeral_nat @ W ) )
        & ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
            & ( ord_less_eq_rat @ A @ zero_zero_rat ) )
          | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
            & ( A = zero_zero_rat ) ) ) ) ) ).

% power_le_zero_eq_numeral
thf(fact_4647_power__le__zero__eq__numeral,axiom,
    ! [A: int,W: num] :
      ( ( ord_less_eq_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ W ) ) @ zero_zero_int )
      = ( ( ord_less_nat @ zero_zero_nat @ ( numeral_numeral_nat @ W ) )
        & ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
            & ( ord_less_eq_int @ A @ zero_zero_int ) )
          | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ W ) )
            & ( A = zero_zero_int ) ) ) ) ) ).

% power_le_zero_eq_numeral
thf(fact_4648_one__mod__2__pow__eq,axiom,
    ! [N: nat] :
      ( ( modulo8411746178871703098atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n8403883297036319079atural @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% one_mod_2_pow_eq
thf(fact_4649_one__mod__2__pow__eq,axiom,
    ! [N: nat] :
      ( ( modulo364778990260209775nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n356916108424825756nteger @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% one_mod_2_pow_eq
thf(fact_4650_one__mod__2__pow__eq,axiom,
    ! [N: nat] :
      ( ( modulo_modulo_int @ one_one_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n2684676970156552555ol_int @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% one_mod_2_pow_eq
thf(fact_4651_one__mod__2__pow__eq,axiom,
    ! [N: nat] :
      ( ( modulo_modulo_nat @ one_one_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( zero_n2687167440665602831ol_nat @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% one_mod_2_pow_eq
thf(fact_4652_verit__eq__simplify_I10_J,axiom,
    ! [X2: num] :
      ( one
     != ( bit0 @ X2 ) ) ).

% verit_eq_simplify(10)
thf(fact_4653_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ ( bit0 @ N ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ N ) ) ) ).

% numeral_Bit0
thf(fact_4654_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit0 @ N ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ N ) ) ) ).

% numeral_Bit0
thf(fact_4655_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numera6620942414471956472nteger @ ( bit0 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ N ) @ ( numera6620942414471956472nteger @ N ) ) ) ).

% numeral_Bit0
thf(fact_4656_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_rat @ ( bit0 @ N ) )
      = ( plus_plus_rat @ ( numeral_numeral_rat @ N ) @ ( numeral_numeral_rat @ N ) ) ) ).

% numeral_Bit0
thf(fact_4657_numeral__code_I2_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ ( bit0 @ N ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ N ) ) ) ).

% numeral_code(2)
thf(fact_4658_numeral__code_I2_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit0 @ N ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ N ) ) ) ).

% numeral_code(2)
thf(fact_4659_numeral__code_I2_J,axiom,
    ! [N: num] :
      ( ( numera6620942414471956472nteger @ ( bit0 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ N ) @ ( numera6620942414471956472nteger @ N ) ) ) ).

% numeral_code(2)
thf(fact_4660_numeral__code_I2_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_rat @ ( bit0 @ N ) )
      = ( plus_plus_rat @ ( numeral_numeral_rat @ N ) @ ( numeral_numeral_rat @ N ) ) ) ).

% numeral_code(2)
thf(fact_4661_cong__exp__iff__simps_I2_J,axiom,
    ! [N: num,Q2: num] :
      ( ( ( modulo_modulo_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) @ ( numeral_numeral_int @ ( bit0 @ Q2 ) ) )
        = zero_zero_int )
      = ( ( modulo_modulo_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ Q2 ) )
        = zero_zero_int ) ) ).

% cong_exp_iff_simps(2)
thf(fact_4662_cong__exp__iff__simps_I2_J,axiom,
    ! [N: num,Q2: num] :
      ( ( ( modulo_modulo_nat @ ( numeral_numeral_nat @ ( bit0 @ N ) ) @ ( numeral_numeral_nat @ ( bit0 @ Q2 ) ) )
        = zero_zero_nat )
      = ( ( modulo_modulo_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ Q2 ) )
        = zero_zero_nat ) ) ).

% cong_exp_iff_simps(2)
thf(fact_4663_cong__exp__iff__simps_I2_J,axiom,
    ! [N: num,Q2: num] :
      ( ( ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ ( bit0 @ N ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ Q2 ) ) )
        = zero_z3403309356797280102nteger )
      = ( ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ N ) @ ( numera6620942414471956472nteger @ Q2 ) )
        = zero_z3403309356797280102nteger ) ) ).

% cong_exp_iff_simps(2)
thf(fact_4664_num_Osize_I5_J,axiom,
    ! [X2: num] :
      ( ( size_size_num @ ( bit0 @ X2 ) )
      = ( plus_plus_nat @ ( size_size_num @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size(5)
thf(fact_4665_power__numeral__even,axiom,
    ! [Z: nat,W: num] :
      ( ( power_power_nat @ Z @ ( numeral_numeral_nat @ ( bit0 @ W ) ) )
      = ( times_times_nat @ ( power_power_nat @ Z @ ( numeral_numeral_nat @ W ) ) @ ( power_power_nat @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_even
thf(fact_4666_power__numeral__even,axiom,
    ! [Z: int,W: num] :
      ( ( power_power_int @ Z @ ( numeral_numeral_nat @ ( bit0 @ W ) ) )
      = ( times_times_int @ ( power_power_int @ Z @ ( numeral_numeral_nat @ W ) ) @ ( power_power_int @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_even
thf(fact_4667_power__numeral__even,axiom,
    ! [Z: code_integer,W: num] :
      ( ( power_8256067586552552935nteger @ Z @ ( numeral_numeral_nat @ ( bit0 @ W ) ) )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ Z @ ( numeral_numeral_nat @ W ) ) @ ( power_8256067586552552935nteger @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_even
thf(fact_4668_power__numeral__even,axiom,
    ! [Z: rat,W: num] :
      ( ( power_power_rat @ Z @ ( numeral_numeral_nat @ ( bit0 @ W ) ) )
      = ( times_times_rat @ ( power_power_rat @ Z @ ( numeral_numeral_nat @ W ) ) @ ( power_power_rat @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_even
thf(fact_4669_left__add__twice,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ A @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) @ B ) ) ).

% left_add_twice
thf(fact_4670_left__add__twice,axiom,
    ! [A: nat,B: nat] :
      ( ( plus_plus_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) @ B ) ) ).

% left_add_twice
thf(fact_4671_left__add__twice,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) @ B ) ) ).

% left_add_twice
thf(fact_4672_left__add__twice,axiom,
    ! [A: rat,B: rat] :
      ( ( plus_plus_rat @ A @ ( plus_plus_rat @ A @ B ) )
      = ( plus_plus_rat @ ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ A ) @ B ) ) ).

% left_add_twice
thf(fact_4673_mult__2__right,axiom,
    ! [Z: int] :
      ( ( times_times_int @ Z @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
      = ( plus_plus_int @ Z @ Z ) ) ).

% mult_2_right
thf(fact_4674_mult__2__right,axiom,
    ! [Z: nat] :
      ( ( times_times_nat @ Z @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_plus_nat @ Z @ Z ) ) ).

% mult_2_right
thf(fact_4675_mult__2__right,axiom,
    ! [Z: code_integer] :
      ( ( times_3573771949741848930nteger @ Z @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
      = ( plus_p5714425477246183910nteger @ Z @ Z ) ) ).

% mult_2_right
thf(fact_4676_mult__2__right,axiom,
    ! [Z: rat] :
      ( ( times_times_rat @ Z @ ( numeral_numeral_rat @ ( bit0 @ one ) ) )
      = ( plus_plus_rat @ Z @ Z ) ) ).

% mult_2_right
thf(fact_4677_mult__2,axiom,
    ! [Z: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Z )
      = ( plus_plus_int @ Z @ Z ) ) ).

% mult_2
thf(fact_4678_mult__2,axiom,
    ! [Z: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Z )
      = ( plus_plus_nat @ Z @ Z ) ) ).

% mult_2
thf(fact_4679_mult__2,axiom,
    ! [Z: code_integer] :
      ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Z )
      = ( plus_p5714425477246183910nteger @ Z @ Z ) ) ).

% mult_2
thf(fact_4680_mult__2,axiom,
    ! [Z: rat] :
      ( ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ Z )
      = ( plus_plus_rat @ Z @ Z ) ) ).

% mult_2
thf(fact_4681_even__zero,axiom,
    dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ zero_z2226904508553997617atural ).

% even_zero
thf(fact_4682_even__zero,axiom,
    dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ zero_zero_int ).

% even_zero
thf(fact_4683_even__zero,axiom,
    dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ zero_zero_nat ).

% even_zero
thf(fact_4684_even__zero,axiom,
    dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ zero_z3403309356797280102nteger ).

% even_zero
thf(fact_4685_odd__even__add,axiom,
    ! [A: int,B: int] :
      ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B )
       => ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ A @ B ) ) ) ) ).

% odd_even_add
thf(fact_4686_odd__even__add,axiom,
    ! [A: nat,B: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
       => ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% odd_even_add
thf(fact_4687_odd__even__add,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
     => ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B )
       => ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% odd_even_add
thf(fact_4688_odd__one,axiom,
    ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ one_one_Code_natural ) ).

% odd_one
thf(fact_4689_odd__one,axiom,
    ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ one_one_int ) ).

% odd_one
thf(fact_4690_odd__one,axiom,
    ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ one_one_nat ) ).

% odd_one
thf(fact_4691_odd__one,axiom,
    ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ one_one_Code_integer ) ).

% odd_one
thf(fact_4692_zero__power2,axiom,
    ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = zero_z3403309356797280102nteger ) ).

% zero_power2
thf(fact_4693_zero__power2,axiom,
    ( ( power_power_rat @ zero_zero_rat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = zero_zero_rat ) ).

% zero_power2
thf(fact_4694_zero__power2,axiom,
    ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = zero_z2226904508553997617atural ) ).

% zero_power2
thf(fact_4695_zero__power2,axiom,
    ( ( power_power_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = zero_zero_nat ) ).

% zero_power2
thf(fact_4696_zero__power2,axiom,
    ( ( power_power_int @ zero_zero_int @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = zero_zero_int ) ).

% zero_power2
thf(fact_4697_numeral__2__eq__2,axiom,
    ( ( numeral_numeral_nat @ ( bit0 @ one ) )
    = ( suc @ ( suc @ zero_zero_nat ) ) ) ).

% numeral_2_eq_2
thf(fact_4698_one__power2,axiom,
    ( ( power_8256067586552552935nteger @ one_one_Code_integer @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_Code_integer ) ).

% one_power2
thf(fact_4699_one__power2,axiom,
    ( ( power_power_rat @ one_one_rat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_rat ) ).

% one_power2
thf(fact_4700_one__power2,axiom,
    ( ( power_7079662738309270450atural @ one_one_Code_natural @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_Code_natural ) ).

% one_power2
thf(fact_4701_one__power2,axiom,
    ( ( power_power_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_nat ) ).

% one_power2
thf(fact_4702_one__power2,axiom,
    ( ( power_power_int @ one_one_int @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_int ) ).

% one_power2
thf(fact_4703_nat__1__add__1,axiom,
    ( ( plus_plus_nat @ one_one_nat @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% nat_1_add_1
thf(fact_4704_num__of__nat__double,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( num_of_nat @ ( plus_plus_nat @ N @ N ) )
        = ( bit0 @ ( num_of_nat @ N ) ) ) ) ).

% num_of_nat_double
thf(fact_4705_half__gt__zero,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ord_less_rat @ zero_zero_rat @ ( divide_divide_rat @ A @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) ) ).

% half_gt_zero
thf(fact_4706_half__gt__zero__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( divide_divide_rat @ A @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% half_gt_zero_iff
thf(fact_4707_zero__le__power2,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% zero_le_power2
thf(fact_4708_zero__le__power2,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% zero_le_power2
thf(fact_4709_zero__le__power2,axiom,
    ! [A: int] : ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% zero_le_power2
thf(fact_4710_power2__eq__imp__eq,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y3 )
         => ( X = Y3 ) ) ) ) ).

% power2_eq_imp_eq
thf(fact_4711_power2__eq__imp__eq,axiom,
    ! [X: code_natural,Y3: code_natural] :
      ( ( ( power_7079662738309270450atural @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( power_7079662738309270450atural @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ X )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ Y3 )
         => ( X = Y3 ) ) ) ) ).

% power2_eq_imp_eq
thf(fact_4712_power2__eq__imp__eq,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ X )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
         => ( X = Y3 ) ) ) ) ).

% power2_eq_imp_eq
thf(fact_4713_power2__eq__imp__eq,axiom,
    ! [X: nat,Y3: nat] :
      ( ( ( power_power_nat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( power_power_nat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ X )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ Y3 )
         => ( X = Y3 ) ) ) ) ).

% power2_eq_imp_eq
thf(fact_4714_power2__eq__imp__eq,axiom,
    ! [X: int,Y3: int] :
      ( ( ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ X )
       => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
         => ( X = Y3 ) ) ) ) ).

% power2_eq_imp_eq
thf(fact_4715_power2__le__imp__le,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y3 )
       => ( ord_le3102999989581377725nteger @ X @ Y3 ) ) ) ).

% power2_le_imp_le
thf(fact_4716_power2__le__imp__le,axiom,
    ! [X: code_natural,Y3: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_7079662738309270450atural @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ Y3 )
       => ( ord_le1926595141338095240atural @ X @ Y3 ) ) ) ).

% power2_le_imp_le
thf(fact_4717_power2__le__imp__le,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
       => ( ord_less_eq_rat @ X @ Y3 ) ) ) ).

% power2_le_imp_le
thf(fact_4718_power2__le__imp__le,axiom,
    ! [X: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_nat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y3 )
       => ( ord_less_eq_nat @ X @ Y3 ) ) ) ).

% power2_le_imp_le
thf(fact_4719_power2__le__imp__le,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
       => ( ord_less_eq_int @ X @ Y3 ) ) ) ).

% power2_le_imp_le
thf(fact_4720_even__iff__mod__2__eq__zero,axiom,
    ! [A: code_natural] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
      = ( ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
        = zero_z2226904508553997617atural ) ) ).

% even_iff_mod_2_eq_zero
thf(fact_4721_even__iff__mod__2__eq__zero,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
      = ( ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
        = zero_zero_int ) ) ).

% even_iff_mod_2_eq_zero
thf(fact_4722_even__iff__mod__2__eq__zero,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
      = ( ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = zero_zero_nat ) ) ).

% even_iff_mod_2_eq_zero
thf(fact_4723_even__iff__mod__2__eq__zero,axiom,
    ! [A: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
      = ( ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
        = zero_z3403309356797280102nteger ) ) ).

% even_iff_mod_2_eq_zero
thf(fact_4724_power2__less__0,axiom,
    ! [A: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ zero_z3403309356797280102nteger ) ).

% power2_less_0
thf(fact_4725_power2__less__0,axiom,
    ! [A: rat] :
      ~ ( ord_less_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ zero_zero_rat ) ).

% power2_less_0
thf(fact_4726_power2__less__0,axiom,
    ! [A: int] :
      ~ ( ord_less_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ zero_zero_int ) ).

% power2_less_0
thf(fact_4727_exp__add__not__zero__imp__left,axiom,
    ! [M: nat,N: nat] :
      ( ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) )
       != zero_z2226904508553997617atural )
     => ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ M )
       != zero_z2226904508553997617atural ) ) ).

% exp_add_not_zero_imp_left
thf(fact_4728_exp__add__not__zero__imp__left,axiom,
    ! [M: nat,N: nat] :
      ( ( ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) )
       != zero_zero_int )
     => ( ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ M )
       != zero_zero_int ) ) ).

% exp_add_not_zero_imp_left
thf(fact_4729_exp__add__not__zero__imp__left,axiom,
    ! [M: nat,N: nat] :
      ( ( ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) )
       != zero_zero_nat )
     => ( ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M )
       != zero_zero_nat ) ) ).

% exp_add_not_zero_imp_left
thf(fact_4730_exp__add__not__zero__imp__left,axiom,
    ! [M: nat,N: nat] :
      ( ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) )
       != zero_z3403309356797280102nteger )
     => ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ M )
       != zero_z3403309356797280102nteger ) ) ).

% exp_add_not_zero_imp_left
thf(fact_4731_exp__add__not__zero__imp__right,axiom,
    ! [M: nat,N: nat] :
      ( ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) )
       != zero_z2226904508553997617atural )
     => ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N )
       != zero_z2226904508553997617atural ) ) ).

% exp_add_not_zero_imp_right
thf(fact_4732_exp__add__not__zero__imp__right,axiom,
    ! [M: nat,N: nat] :
      ( ( ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) )
       != zero_zero_int )
     => ( ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N )
       != zero_zero_int ) ) ).

% exp_add_not_zero_imp_right
thf(fact_4733_exp__add__not__zero__imp__right,axiom,
    ! [M: nat,N: nat] :
      ( ( ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) )
       != zero_zero_nat )
     => ( ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
       != zero_zero_nat ) ) ).

% exp_add_not_zero_imp_right
thf(fact_4734_exp__add__not__zero__imp__right,axiom,
    ! [M: nat,N: nat] :
      ( ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) )
       != zero_z3403309356797280102nteger )
     => ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N )
       != zero_z3403309356797280102nteger ) ) ).

% exp_add_not_zero_imp_right
thf(fact_4735_odd__iff__mod__2__eq__one,axiom,
    ! [A: code_natural] :
      ( ( ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) )
      = ( ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
        = one_one_Code_natural ) ) ).

% odd_iff_mod_2_eq_one
thf(fact_4736_odd__iff__mod__2__eq__one,axiom,
    ! [A: int] :
      ( ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
      = ( ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
        = one_one_int ) ) ).

% odd_iff_mod_2_eq_one
thf(fact_4737_odd__iff__mod__2__eq__one,axiom,
    ! [A: nat] :
      ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) )
      = ( ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_nat ) ) ).

% odd_iff_mod_2_eq_one
thf(fact_4738_odd__iff__mod__2__eq__one,axiom,
    ! [A: code_integer] :
      ( ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) )
      = ( ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
        = one_one_Code_integer ) ) ).

% odd_iff_mod_2_eq_one
thf(fact_4739_sum__power2__eq__zero__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = zero_z3403309356797280102nteger )
      = ( ( X = zero_z3403309356797280102nteger )
        & ( Y3 = zero_z3403309356797280102nteger ) ) ) ).

% sum_power2_eq_zero_iff
thf(fact_4740_sum__power2__eq__zero__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ( plus_plus_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = zero_zero_rat )
      = ( ( X = zero_zero_rat )
        & ( Y3 = zero_zero_rat ) ) ) ).

% sum_power2_eq_zero_iff
thf(fact_4741_sum__power2__eq__zero__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( ( plus_plus_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = zero_zero_int )
      = ( ( X = zero_zero_int )
        & ( Y3 = zero_zero_int ) ) ) ).

% sum_power2_eq_zero_iff
thf(fact_4742_exp__not__zero__imp__exp__diff__not__zero,axiom,
    ! [N: nat,M: nat] :
      ( ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N )
       != zero_z2226904508553997617atural )
     => ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ M ) )
       != zero_z2226904508553997617atural ) ) ).

% exp_not_zero_imp_exp_diff_not_zero
thf(fact_4743_exp__not__zero__imp__exp__diff__not__zero,axiom,
    ! [N: nat,M: nat] :
      ( ( ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N )
       != zero_zero_int )
     => ( ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ M ) )
       != zero_zero_int ) ) ).

% exp_not_zero_imp_exp_diff_not_zero
thf(fact_4744_exp__not__zero__imp__exp__diff__not__zero,axiom,
    ! [N: nat,M: nat] :
      ( ( ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
       != zero_zero_nat )
     => ( ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ M ) )
       != zero_zero_nat ) ) ).

% exp_not_zero_imp_exp_diff_not_zero
thf(fact_4745_exp__not__zero__imp__exp__diff__not__zero,axiom,
    ! [N: nat,M: nat] :
      ( ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N )
       != zero_z3403309356797280102nteger )
     => ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ M ) )
       != zero_z3403309356797280102nteger ) ) ).

% exp_not_zero_imp_exp_diff_not_zero
thf(fact_4746_div__exp__eq,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( divide_divide_int @ ( divide_divide_int @ A @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ M ) ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
      = ( divide_divide_int @ A @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) ) ) ) ).

% div_exp_eq
thf(fact_4747_div__exp__eq,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( divide_divide_nat @ ( divide_divide_nat @ A @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( divide_divide_nat @ A @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) ) ) ) ).

% div_exp_eq
thf(fact_4748_div__exp__eq,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( divide6298287555418463151nteger @ ( divide6298287555418463151nteger @ A @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ M ) ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) )
      = ( divide6298287555418463151nteger @ A @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) ) ) ) ).

% div_exp_eq
thf(fact_4749_div__exp__eq,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( divide5121882707175180666atural @ ( divide5121882707175180666atural @ A @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ M ) ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) )
      = ( divide5121882707175180666atural @ A @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) ) ) ) ).

% div_exp_eq
thf(fact_4750_power2__eq__1__iff,axiom,
    ! [A: int] :
      ( ( ( power_power_int @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_int )
      = ( ( A = one_one_int )
        | ( A
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% power2_eq_1_iff
thf(fact_4751_power2__eq__1__iff,axiom,
    ! [A: code_integer] :
      ( ( ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_Code_integer )
      = ( ( A = one_one_Code_integer )
        | ( A
          = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ) ) ).

% power2_eq_1_iff
thf(fact_4752_power2__eq__1__iff,axiom,
    ! [A: rat] :
      ( ( ( power_power_rat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_rat )
      = ( ( A = one_one_rat )
        | ( A
          = ( uminus_uminus_rat @ one_one_rat ) ) ) ) ).

% power2_eq_1_iff
thf(fact_4753_less__2__cases,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
     => ( ( N = zero_zero_nat )
        | ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% less_2_cases
thf(fact_4754_less__2__cases__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( ( N = zero_zero_nat )
        | ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% less_2_cases_iff
thf(fact_4755_abs__square__eq__1,axiom,
    ! [X: code_integer] :
      ( ( ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_Code_integer )
      = ( ( abs_abs_Code_integer @ X )
        = one_one_Code_integer ) ) ).

% abs_square_eq_1
thf(fact_4756_abs__square__eq__1,axiom,
    ! [X: rat] :
      ( ( ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_rat )
      = ( ( abs_abs_rat @ X )
        = one_one_rat ) ) ).

% abs_square_eq_1
thf(fact_4757_abs__square__eq__1,axiom,
    ! [X: int] :
      ( ( ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_int )
      = ( ( abs_abs_int @ X )
        = one_one_int ) ) ).

% abs_square_eq_1
thf(fact_4758_odd__pos,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% odd_pos
thf(fact_4759_nat__2,axiom,
    ( ( nat2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
    = ( suc @ ( suc @ zero_zero_nat ) ) ) ).

% nat_2
thf(fact_4760_nat__induct2,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ( P @ one_one_nat )
       => ( ! [N2: nat] :
              ( ( P @ N2 )
             => ( P @ ( plus_plus_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct2
thf(fact_4761_divmod__digit__0_I2_J,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_int @ ( modulo_modulo_int @ A @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ B )
       => ( ( modulo_modulo_int @ A @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) )
          = ( modulo_modulo_int @ A @ B ) ) ) ) ).

% divmod_digit_0(2)
thf(fact_4762_divmod__digit__0_I2_J,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ( ord_less_nat @ ( modulo_modulo_nat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) @ B )
       => ( ( modulo_modulo_nat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) )
          = ( modulo_modulo_nat @ A @ B ) ) ) ) ).

% divmod_digit_0(2)
thf(fact_4763_divmod__digit__0_I2_J,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ( ord_le6747313008572928689nteger @ ( modulo364778990260209775nteger @ A @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) ) @ B )
       => ( ( modulo364778990260209775nteger @ A @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) )
          = ( modulo364778990260209775nteger @ A @ B ) ) ) ) ).

% divmod_digit_0(2)
thf(fact_4764_oddE,axiom,
    ! [A: code_natural] :
      ( ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
     => ~ ! [B2: code_natural] :
            ( A
           != ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ B2 ) @ one_one_Code_natural ) ) ) ).

% oddE
thf(fact_4765_oddE,axiom,
    ! [A: int] :
      ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ~ ! [B2: int] :
            ( A
           != ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B2 ) @ one_one_int ) ) ) ).

% oddE
thf(fact_4766_oddE,axiom,
    ! [A: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ~ ! [B2: nat] :
            ( A
           != ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B2 ) @ one_one_nat ) ) ) ).

% oddE
thf(fact_4767_oddE,axiom,
    ! [A: code_integer] :
      ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
     => ~ ! [B2: code_integer] :
            ( A
           != ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B2 ) @ one_one_Code_integer ) ) ) ).

% oddE
thf(fact_4768_power2__less__imp__less,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y3 )
       => ( ord_le6747313008572928689nteger @ X @ Y3 ) ) ) ).

% power2_less_imp_less
thf(fact_4769_power2__less__imp__less,axiom,
    ! [X: code_natural,Y3: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_7079662738309270450atural @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ Y3 )
       => ( ord_le5570908160329646204atural @ X @ Y3 ) ) ) ).

% power2_less_imp_less
thf(fact_4770_power2__less__imp__less,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
       => ( ord_less_rat @ X @ Y3 ) ) ) ).

% power2_less_imp_less
thf(fact_4771_power2__less__imp__less,axiom,
    ! [X: nat,Y3: nat] :
      ( ( ord_less_nat @ ( power_power_nat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_nat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y3 )
       => ( ord_less_nat @ X @ Y3 ) ) ) ).

% power2_less_imp_less
thf(fact_4772_power2__less__imp__less,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
       => ( ord_less_int @ X @ Y3 ) ) ) ).

% power2_less_imp_less
thf(fact_4773_sum__power2__ge__zero,axiom,
    ! [X: code_integer,Y3: code_integer] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% sum_power2_ge_zero
thf(fact_4774_sum__power2__ge__zero,axiom,
    ! [X: rat,Y3: rat] : ( ord_less_eq_rat @ zero_zero_rat @ ( plus_plus_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% sum_power2_ge_zero
thf(fact_4775_sum__power2__ge__zero,axiom,
    ! [X: int,Y3: int] : ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% sum_power2_ge_zero
thf(fact_4776_sum__power2__le__zero__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ zero_z3403309356797280102nteger )
      = ( ( X = zero_z3403309356797280102nteger )
        & ( Y3 = zero_z3403309356797280102nteger ) ) ) ).

% sum_power2_le_zero_iff
thf(fact_4777_sum__power2__le__zero__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ zero_zero_rat )
      = ( ( X = zero_zero_rat )
        & ( Y3 = zero_zero_rat ) ) ) ).

% sum_power2_le_zero_iff
thf(fact_4778_sum__power2__le__zero__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ zero_zero_int )
      = ( ( X = zero_zero_int )
        & ( Y3 = zero_zero_int ) ) ) ).

% sum_power2_le_zero_iff
thf(fact_4779_parity__cases,axiom,
    ! [A: code_natural] :
      ( ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
       => ( ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
         != zero_z2226904508553997617atural ) )
     => ~ ( ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
         => ( ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
           != one_one_Code_natural ) ) ) ).

% parity_cases
thf(fact_4780_parity__cases,axiom,
    ! [A: int] :
      ( ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
       => ( ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
         != zero_zero_int ) )
     => ~ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
         => ( ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
           != one_one_int ) ) ) ).

% parity_cases
thf(fact_4781_parity__cases,axiom,
    ! [A: nat] :
      ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
       => ( ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
         != zero_zero_nat ) )
     => ~ ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
         => ( ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
           != one_one_nat ) ) ) ).

% parity_cases
thf(fact_4782_parity__cases,axiom,
    ! [A: code_integer] :
      ( ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
       => ( ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
         != zero_z3403309356797280102nteger ) )
     => ~ ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
         => ( ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
           != one_one_Code_integer ) ) ) ).

% parity_cases
thf(fact_4783_mod2__eq__if,axiom,
    ! [A: code_natural] :
      ( ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
       => ( ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
          = zero_z2226904508553997617atural ) )
      & ( ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
       => ( ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
          = one_one_Code_natural ) ) ) ).

% mod2_eq_if
thf(fact_4784_mod2__eq__if,axiom,
    ! [A: int] :
      ( ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
       => ( ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
          = zero_zero_int ) )
      & ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
       => ( ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
          = one_one_int ) ) ) ).

% mod2_eq_if
thf(fact_4785_mod2__eq__if,axiom,
    ! [A: nat] :
      ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
       => ( ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
          = zero_zero_nat ) )
      & ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
       => ( ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
          = one_one_nat ) ) ) ).

% mod2_eq_if
thf(fact_4786_mod2__eq__if,axiom,
    ! [A: code_integer] :
      ( ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
       => ( ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
          = zero_z3403309356797280102nteger ) )
      & ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
       => ( ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
          = one_one_Code_integer ) ) ) ).

% mod2_eq_if
thf(fact_4787_bits__stable__imp__add__self,axiom,
    ! [A: code_natural] :
      ( ( ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
        = A )
     => ( ( plus_p4538020629002901425atural @ A @ ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) )
        = zero_z2226904508553997617atural ) ) ).

% bits_stable_imp_add_self
thf(fact_4788_bits__stable__imp__add__self,axiom,
    ! [A: int] :
      ( ( ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
        = A )
     => ( ( plus_plus_int @ A @ ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) )
        = zero_zero_int ) ) ).

% bits_stable_imp_add_self
thf(fact_4789_bits__stable__imp__add__self,axiom,
    ! [A: nat] :
      ( ( ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = A )
     => ( ( plus_plus_nat @ A @ ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = zero_zero_nat ) ) ).

% bits_stable_imp_add_self
thf(fact_4790_bits__stable__imp__add__self,axiom,
    ! [A: code_integer] :
      ( ( ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
        = A )
     => ( ( plus_p5714425477246183910nteger @ A @ ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) )
        = zero_z3403309356797280102nteger ) ) ).

% bits_stable_imp_add_self
thf(fact_4791_not__sum__power2__lt__zero,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ zero_z3403309356797280102nteger ) ).

% not_sum_power2_lt_zero
thf(fact_4792_not__sum__power2__lt__zero,axiom,
    ! [X: rat,Y3: rat] :
      ~ ( ord_less_rat @ ( plus_plus_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ zero_zero_rat ) ).

% not_sum_power2_lt_zero
thf(fact_4793_not__sum__power2__lt__zero,axiom,
    ! [X: int,Y3: int] :
      ~ ( ord_less_int @ ( plus_plus_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ zero_zero_int ) ).

% not_sum_power2_lt_zero
thf(fact_4794_sum__power2__gt__zero__iff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
      = ( ( X != zero_z3403309356797280102nteger )
        | ( Y3 != zero_z3403309356797280102nteger ) ) ) ).

% sum_power2_gt_zero_iff
thf(fact_4795_sum__power2__gt__zero__iff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
      = ( ( X != zero_zero_rat )
        | ( Y3 != zero_zero_rat ) ) ) ).

% sum_power2_gt_zero_iff
thf(fact_4796_sum__power2__gt__zero__iff,axiom,
    ! [X: int,Y3: int] :
      ( ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
      = ( ( X != zero_zero_int )
        | ( Y3 != zero_zero_int ) ) ) ).

% sum_power2_gt_zero_iff
thf(fact_4797_power2__sum,axiom,
    ! [X: int,Y3: int] :
      ( ( power_power_int @ ( plus_plus_int @ X @ Y3 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_plus_int @ ( plus_plus_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X ) @ Y3 ) ) ) ).

% power2_sum
thf(fact_4798_power2__sum,axiom,
    ! [X: nat,Y3: nat] :
      ( ( power_power_nat @ ( plus_plus_nat @ X @ Y3 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( power_power_nat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_nat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ X ) @ Y3 ) ) ) ).

% power2_sum
thf(fact_4799_power2__sum,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( power_8256067586552552935nteger @ ( plus_p5714425477246183910nteger @ X @ Y3 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_3573771949741848930nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ X ) @ Y3 ) ) ) ).

% power2_sum
thf(fact_4800_power2__sum,axiom,
    ! [X: rat,Y3: rat] :
      ( ( power_power_rat @ ( plus_plus_rat @ X @ Y3 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_plus_rat @ ( plus_plus_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_rat @ ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ X ) @ Y3 ) ) ) ).

% power2_sum
thf(fact_4801_square__le__1,axiom,
    ! [X: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ X )
     => ( ( ord_le3102999989581377725nteger @ X @ one_one_Code_integer )
       => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_Code_integer ) ) ) ).

% square_le_1
thf(fact_4802_square__le__1,axiom,
    ! [X: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ one_one_rat ) @ X )
     => ( ( ord_less_eq_rat @ X @ one_one_rat )
       => ( ord_less_eq_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_rat ) ) ) ).

% square_le_1
thf(fact_4803_square__le__1,axiom,
    ! [X: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ one_one_int ) @ X )
     => ( ( ord_less_eq_int @ X @ one_one_int )
       => ( ord_less_eq_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_int ) ) ) ).

% square_le_1
thf(fact_4804_zero__le__even__power_H,axiom,
    ! [A: code_integer,N: nat] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% zero_le_even_power'
thf(fact_4805_zero__le__even__power_H,axiom,
    ! [A: rat,N: nat] : ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% zero_le_even_power'
thf(fact_4806_zero__le__even__power_H,axiom,
    ! [A: int,N: nat] : ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% zero_le_even_power'
thf(fact_4807_power2__le__iff__abs__le,axiom,
    ! [Y3: code_integer,X: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y3 )
     => ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ X ) @ Y3 ) ) ) ).

% power2_le_iff_abs_le
thf(fact_4808_power2__le__iff__abs__le,axiom,
    ! [Y3: rat,X: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ Y3 )
     => ( ( ord_less_eq_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = ( ord_less_eq_rat @ ( abs_abs_rat @ X ) @ Y3 ) ) ) ).

% power2_le_iff_abs_le
thf(fact_4809_power2__le__iff__abs__le,axiom,
    ! [Y3: int,X: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
     => ( ( ord_less_eq_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = ( ord_less_eq_int @ ( abs_abs_int @ X ) @ Y3 ) ) ) ).

% power2_le_iff_abs_le
thf(fact_4810_zero__le__even__power,axiom,
    ! [N: nat,A: code_integer] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% zero_le_even_power
thf(fact_4811_zero__le__even__power,axiom,
    ! [N: nat,A: rat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ A @ N ) ) ) ).

% zero_le_even_power
thf(fact_4812_zero__le__even__power,axiom,
    ! [N: nat,A: int] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ A @ N ) ) ) ).

% zero_le_even_power
thf(fact_4813_zero__le__odd__power,axiom,
    ! [N: nat,A: code_integer] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ N ) )
        = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ) ).

% zero_le_odd_power
thf(fact_4814_zero__le__odd__power,axiom,
    ! [N: nat,A: rat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ A @ N ) )
        = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ) ).

% zero_le_odd_power
thf(fact_4815_zero__le__odd__power,axiom,
    ! [N: nat,A: int] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ A @ N ) )
        = ( ord_less_eq_int @ zero_zero_int @ A ) ) ) ).

% zero_le_odd_power
thf(fact_4816_zero__le__power__eq,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ N ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ) ) ).

% zero_le_power_eq
thf(fact_4817_zero__le__power__eq,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ A @ N ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          & ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ) ) ).

% zero_le_power_eq
thf(fact_4818_zero__le__power__eq,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ A @ N ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          & ( ord_less_eq_int @ zero_zero_int @ A ) ) ) ) ).

% zero_le_power_eq
thf(fact_4819_abs__square__le__1,axiom,
    ! [X: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_Code_integer )
      = ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ X ) @ one_one_Code_integer ) ) ).

% abs_square_le_1
thf(fact_4820_abs__square__le__1,axiom,
    ! [X: rat] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_rat )
      = ( ord_less_eq_rat @ ( abs_abs_rat @ X ) @ one_one_rat ) ) ).

% abs_square_le_1
thf(fact_4821_abs__square__le__1,axiom,
    ! [X: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_int )
      = ( ord_less_eq_int @ ( abs_abs_int @ X ) @ one_one_int ) ) ).

% abs_square_le_1
thf(fact_4822_abs__square__less__1,axiom,
    ! [X: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_Code_integer )
      = ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ X ) @ one_one_Code_integer ) ) ).

% abs_square_less_1
thf(fact_4823_abs__square__less__1,axiom,
    ! [X: rat] :
      ( ( ord_less_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_rat )
      = ( ord_less_rat @ ( abs_abs_rat @ X ) @ one_one_rat ) ) ).

% abs_square_less_1
thf(fact_4824_abs__square__less__1,axiom,
    ! [X: int] :
      ( ( ord_less_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_int )
      = ( ord_less_int @ ( abs_abs_int @ X ) @ one_one_int ) ) ).

% abs_square_less_1
thf(fact_4825_bits__induct,axiom,
    ! [P: code_integer > $o,A: code_integer] :
      ( ! [A2: code_integer] :
          ( ( ( divide6298287555418463151nteger @ A2 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
            = A2 )
         => ( P @ A2 ) )
     => ( ! [A2: code_integer,B2: $o] :
            ( ( P @ A2 )
           => ( ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ ( zero_n356916108424825756nteger @ B2 ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A2 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
                = A2 )
             => ( P @ ( plus_p5714425477246183910nteger @ ( zero_n356916108424825756nteger @ B2 ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A2 ) ) ) ) )
       => ( P @ A ) ) ) ).

% bits_induct
thf(fact_4826_bits__induct,axiom,
    ! [P: code_natural > $o,A: code_natural] :
      ( ! [A2: code_natural] :
          ( ( ( divide5121882707175180666atural @ A2 @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
            = A2 )
         => ( P @ A2 ) )
     => ( ! [A2: code_natural,B2: $o] :
            ( ( P @ A2 )
           => ( ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ ( zero_n8403883297036319079atural @ B2 ) @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A2 ) ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
                = A2 )
             => ( P @ ( plus_p4538020629002901425atural @ ( zero_n8403883297036319079atural @ B2 ) @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A2 ) ) ) ) )
       => ( P @ A ) ) ) ).

% bits_induct
thf(fact_4827_bits__induct,axiom,
    ! [P: int > $o,A: int] :
      ( ! [A2: int] :
          ( ( ( divide_divide_int @ A2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
            = A2 )
         => ( P @ A2 ) )
     => ( ! [A2: int,B2: $o] :
            ( ( P @ A2 )
           => ( ( ( divide_divide_int @ ( plus_plus_int @ ( zero_n2684676970156552555ol_int @ B2 ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A2 ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
                = A2 )
             => ( P @ ( plus_plus_int @ ( zero_n2684676970156552555ol_int @ B2 ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A2 ) ) ) ) )
       => ( P @ A ) ) ) ).

% bits_induct
thf(fact_4828_bits__induct,axiom,
    ! [P: nat > $o,A: nat] :
      ( ! [A2: nat] :
          ( ( ( divide_divide_nat @ A2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
            = A2 )
         => ( P @ A2 ) )
     => ( ! [A2: nat,B2: $o] :
            ( ( P @ A2 )
           => ( ( ( divide_divide_nat @ ( plus_plus_nat @ ( zero_n2687167440665602831ol_nat @ B2 ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A2 ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
                = A2 )
             => ( P @ ( plus_plus_nat @ ( zero_n2687167440665602831ol_nat @ B2 ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A2 ) ) ) ) )
       => ( P @ A ) ) ) ).

% bits_induct
thf(fact_4829_div__exp__mod__exp__eq,axiom,
    ! [A: code_natural,N: nat,M: nat] :
      ( ( modulo8411746178871703098atural @ ( divide5121882707175180666atural @ A @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ M ) )
      = ( divide5121882707175180666atural @ ( modulo8411746178871703098atural @ A @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( plus_plus_nat @ N @ M ) ) ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) ) ) ).

% div_exp_mod_exp_eq
thf(fact_4830_div__exp__mod__exp__eq,axiom,
    ! [A: int,N: nat,M: nat] :
      ( ( modulo_modulo_int @ ( divide_divide_int @ A @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ M ) )
      = ( divide_divide_int @ ( modulo_modulo_int @ A @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_nat @ N @ M ) ) ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ).

% div_exp_mod_exp_eq
thf(fact_4831_div__exp__mod__exp__eq,axiom,
    ! [A: nat,N: nat,M: nat] :
      ( ( modulo_modulo_nat @ ( divide_divide_nat @ A @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
      = ( divide_divide_nat @ ( modulo_modulo_nat @ A @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ N @ M ) ) ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% div_exp_mod_exp_eq
thf(fact_4832_div__exp__mod__exp__eq,axiom,
    ! [A: code_integer,N: nat,M: nat] :
      ( ( modulo364778990260209775nteger @ ( divide6298287555418463151nteger @ A @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ M ) )
      = ( divide6298287555418463151nteger @ ( modulo364778990260209775nteger @ A @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( plus_plus_nat @ N @ M ) ) ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) ) ) ).

% div_exp_mod_exp_eq
thf(fact_4833_nat__bit__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( P @ N2 )
           => ( ( ord_less_nat @ zero_zero_nat @ N2 )
             => ( P @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) )
       => ( ! [N2: nat] :
              ( ( P @ N2 )
             => ( P @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_bit_induct
thf(fact_4834_minus__one__power__iff,axiom,
    ! [N: nat] :
      ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
       => ( ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N )
          = one_one_int ) )
      & ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
       => ( ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N )
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% minus_one_power_iff
thf(fact_4835_minus__one__power__iff,axiom,
    ! [N: nat] :
      ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
       => ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N )
          = one_one_Code_integer ) )
      & ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
       => ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N )
          = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ) ) ).

% minus_one_power_iff
thf(fact_4836_minus__one__power__iff,axiom,
    ! [N: nat] :
      ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
       => ( ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N )
          = one_one_rat ) )
      & ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
       => ( ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N )
          = ( uminus_uminus_rat @ one_one_rat ) ) ) ) ).

% minus_one_power_iff
thf(fact_4837_div__2__gt__zero,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% div_2_gt_zero
thf(fact_4838_Suc__n__div__2__gt__zero,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% Suc_n_div_2_gt_zero
thf(fact_4839_fact__code,axiom,
    ( semiri1406184849735516958ct_int
    = ( ^ [N5: nat] : ( semiri1314217659103216013at_int @ ( set_fo2584398358068434914at_nat @ times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N5 @ one_one_nat ) ) ) ) ).

% fact_code
thf(fact_4840_fact__code,axiom,
    ( semiri1408675320244567234ct_nat
    = ( ^ [N5: nat] : ( semiri1316708129612266289at_nat @ ( set_fo2584398358068434914at_nat @ times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N5 @ one_one_nat ) ) ) ) ).

% fact_code
thf(fact_4841_divmod__digit__0_I1_J,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_int @ ( modulo_modulo_int @ A @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ B )
       => ( ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ A @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) )
          = ( divide_divide_int @ A @ B ) ) ) ) ).

% divmod_digit_0(1)
thf(fact_4842_divmod__digit__0_I1_J,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ( ord_less_nat @ ( modulo_modulo_nat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) @ B )
       => ( ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) )
          = ( divide_divide_nat @ A @ B ) ) ) ) ).

% divmod_digit_0(1)
thf(fact_4843_divmod__digit__0_I1_J,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ( ord_le6747313008572928689nteger @ ( modulo364778990260209775nteger @ A @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) ) @ B )
       => ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( divide6298287555418463151nteger @ A @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) ) )
          = ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% divmod_digit_0(1)
thf(fact_4844_power2__diff,axiom,
    ! [X: int,Y3: int] :
      ( ( power_power_int @ ( minus_minus_int @ X @ Y3 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( minus_minus_int @ ( plus_plus_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X ) @ Y3 ) ) ) ).

% power2_diff
thf(fact_4845_power2__diff,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( power_8256067586552552935nteger @ ( minus_8373710615458151222nteger @ X @ Y3 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ ( power_8256067586552552935nteger @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_3573771949741848930nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ X ) @ Y3 ) ) ) ).

% power2_diff
thf(fact_4846_power2__diff,axiom,
    ! [X: rat,Y3: rat] :
      ( ( power_power_rat @ ( minus_minus_rat @ X @ Y3 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( minus_minus_rat @ ( plus_plus_rat @ ( power_power_rat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_rat @ Y3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_rat @ ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ X ) @ Y3 ) ) ) ).

% power2_diff
thf(fact_4847_odd__0__le__power__imp__0__le,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% odd_0_le_power_imp_0_le
thf(fact_4848_odd__0__le__power__imp__0__le,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ A @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
     => ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% odd_0_le_power_imp_0_le
thf(fact_4849_odd__0__le__power__imp__0__le,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ A @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
     => ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% odd_0_le_power_imp_0_le
thf(fact_4850_odd__power__less__zero,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) @ zero_z3403309356797280102nteger ) ) ).

% odd_power_less_zero
thf(fact_4851_odd__power__less__zero,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ord_less_rat @ ( power_power_rat @ A @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) @ zero_zero_rat ) ) ).

% odd_power_less_zero
thf(fact_4852_odd__power__less__zero,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ord_less_int @ ( power_power_int @ A @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) @ zero_zero_int ) ) ).

% odd_power_less_zero
thf(fact_4853_zero__less__power__eq,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ N ) )
      = ( ( N = zero_zero_nat )
        | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          & ( A != zero_z3403309356797280102nteger ) )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          & ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A ) ) ) ) ).

% zero_less_power_eq
thf(fact_4854_zero__less__power__eq,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( power_power_rat @ A @ N ) )
      = ( ( N = zero_zero_nat )
        | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          & ( A != zero_zero_rat ) )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          & ( ord_less_rat @ zero_zero_rat @ A ) ) ) ) ).

% zero_less_power_eq
thf(fact_4855_zero__less__power__eq,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ ( power_power_int @ A @ N ) )
      = ( ( N = zero_zero_nat )
        | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          & ( A != zero_zero_int ) )
        | ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          & ( ord_less_int @ zero_zero_int @ A ) ) ) ) ).

% zero_less_power_eq
thf(fact_4856_power__minus1__odd,axiom,
    ! [N: nat] :
      ( ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
      = ( uminus_uminus_int @ one_one_int ) ) ).

% power_minus1_odd
thf(fact_4857_power__minus1__odd,axiom,
    ! [N: nat] :
      ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
      = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% power_minus1_odd
thf(fact_4858_power__minus1__odd,axiom,
    ! [N: nat] :
      ( ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
      = ( uminus_uminus_rat @ one_one_rat ) ) ).

% power_minus1_odd
thf(fact_4859_ex__power__ivl2,axiom,
    ! [B: nat,K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
     => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
       => ? [N2: nat] :
            ( ( ord_less_nat @ ( power_power_nat @ B @ N2 ) @ K )
            & ( ord_less_eq_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N2 @ one_one_nat ) ) ) ) ) ) ).

% ex_power_ivl2
thf(fact_4860_ex__power__ivl1,axiom,
    ! [B: nat,K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
     => ( ( ord_less_eq_nat @ one_one_nat @ K )
       => ? [N2: nat] :
            ( ( ord_less_eq_nat @ ( power_power_nat @ B @ N2 ) @ K )
            & ( ord_less_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N2 @ one_one_nat ) ) ) ) ) ) ).

% ex_power_ivl1
thf(fact_4861_mod__double__modulus,axiom,
    ! [M: code_integer,X: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ M )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X )
       => ( ( ( modulo364778990260209775nteger @ X @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ M ) )
            = ( modulo364778990260209775nteger @ X @ M ) )
          | ( ( modulo364778990260209775nteger @ X @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ M ) )
            = ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ X @ M ) @ M ) ) ) ) ) ).

% mod_double_modulus
thf(fact_4862_mod__double__modulus,axiom,
    ! [M: nat,X: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ X )
       => ( ( ( modulo_modulo_nat @ X @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
            = ( modulo_modulo_nat @ X @ M ) )
          | ( ( modulo_modulo_nat @ X @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) )
            = ( plus_plus_nat @ ( modulo_modulo_nat @ X @ M ) @ M ) ) ) ) ) ).

% mod_double_modulus
thf(fact_4863_mod__double__modulus,axiom,
    ! [M: int,X: int] :
      ( ( ord_less_int @ zero_zero_int @ M )
     => ( ( ord_less_eq_int @ zero_zero_int @ X )
       => ( ( ( modulo_modulo_int @ X @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ M ) )
            = ( modulo_modulo_int @ X @ M ) )
          | ( ( modulo_modulo_int @ X @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ M ) )
            = ( plus_plus_int @ ( modulo_modulo_int @ X @ M ) @ M ) ) ) ) ) ).

% mod_double_modulus
thf(fact_4864_divmod__digit__1_I2_J,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
       => ( ( ord_le3102999989581377725nteger @ B @ ( modulo364778990260209775nteger @ A @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) ) )
         => ( ( minus_8373710615458151222nteger @ ( modulo364778990260209775nteger @ A @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) ) @ B )
            = ( modulo364778990260209775nteger @ A @ B ) ) ) ) ) ).

% divmod_digit_1(2)
thf(fact_4865_divmod__digit__1_I2_J,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ( ord_less_eq_nat @ B @ ( modulo_modulo_nat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) )
         => ( ( minus_minus_nat @ ( modulo_modulo_nat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) @ B )
            = ( modulo_modulo_nat @ A @ B ) ) ) ) ) ).

% divmod_digit_1(2)
thf(fact_4866_divmod__digit__1_I2_J,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ( ord_less_eq_int @ B @ ( modulo_modulo_int @ A @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) )
         => ( ( minus_minus_int @ ( modulo_modulo_int @ A @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ B )
            = ( modulo_modulo_int @ A @ B ) ) ) ) ) ).

% divmod_digit_1(2)
thf(fact_4867_even__mask__div__iff_H,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ M ) @ one_one_int ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% even_mask_div_iff'
thf(fact_4868_even__mask__div__iff_H,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ one_one_nat ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% even_mask_div_iff'
thf(fact_4869_even__mask__div__iff_H,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( divide6298287555418463151nteger @ ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ M ) @ one_one_Code_integer ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% even_mask_div_iff'
thf(fact_4870_even__mask__div__iff_H,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( divide5121882707175180666atural @ ( minus_7197305767214868737atural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ M ) @ one_one_Code_natural ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% even_mask_div_iff'
thf(fact_4871_power__le__zero__eq,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N ) @ zero_z3403309356797280102nteger )
      = ( ( ord_less_nat @ zero_zero_nat @ N )
        & ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
            & ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) )
          | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
            & ( A = zero_z3403309356797280102nteger ) ) ) ) ) ).

% power_le_zero_eq
thf(fact_4872_power__le__zero__eq,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ A @ N ) @ zero_zero_rat )
      = ( ( ord_less_nat @ zero_zero_nat @ N )
        & ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
            & ( ord_less_eq_rat @ A @ zero_zero_rat ) )
          | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
            & ( A = zero_zero_rat ) ) ) ) ) ).

% power_le_zero_eq
thf(fact_4873_power__le__zero__eq,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ ( power_power_int @ A @ N ) @ zero_zero_int )
      = ( ( ord_less_nat @ zero_zero_nat @ N )
        & ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
            & ( ord_less_eq_int @ A @ zero_zero_int ) )
          | ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
            & ( A = zero_zero_int ) ) ) ) ) ).

% power_le_zero_eq
thf(fact_4874_even__mod__4__div__2,axiom,
    ! [N: nat] :
      ( ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
        = ( suc @ zero_zero_nat ) )
     => ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% even_mod_4_div_2
thf(fact_4875_even__mask__div__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ M ) @ one_one_int ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) )
      = ( ( ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N )
          = zero_zero_int )
        | ( ord_less_eq_nat @ M @ N ) ) ) ).

% even_mask_div_iff
thf(fact_4876_even__mask__div__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ one_one_nat ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
      = ( ( ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
          = zero_zero_nat )
        | ( ord_less_eq_nat @ M @ N ) ) ) ).

% even_mask_div_iff
thf(fact_4877_even__mask__div__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( divide6298287555418463151nteger @ ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ M ) @ one_one_Code_integer ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) ) )
      = ( ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N )
          = zero_z3403309356797280102nteger )
        | ( ord_less_eq_nat @ M @ N ) ) ) ).

% even_mask_div_iff
thf(fact_4878_even__mask__div__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( divide5121882707175180666atural @ ( minus_7197305767214868737atural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ M ) @ one_one_Code_natural ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) ) )
      = ( ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N )
          = zero_z2226904508553997617atural )
        | ( ord_less_eq_nat @ M @ N ) ) ) ).

% even_mask_div_iff
thf(fact_4879_exp__div__exp__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( divide6298287555418463151nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ M ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) )
      = ( times_3573771949741848930nteger
        @ ( zero_n356916108424825756nteger
          @ ( ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ M )
             != zero_z3403309356797280102nteger )
            & ( ord_less_eq_nat @ N @ M ) ) )
        @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% exp_div_exp_eq
thf(fact_4880_exp__div__exp__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( divide5121882707175180666atural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ M ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) )
      = ( times_2397367101498566445atural
        @ ( zero_n8403883297036319079atural
          @ ( ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ M )
             != zero_z2226904508553997617atural )
            & ( ord_less_eq_nat @ N @ M ) ) )
        @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% exp_div_exp_eq
thf(fact_4881_exp__div__exp__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( divide_divide_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ M ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
      = ( times_times_int
        @ ( zero_n2684676970156552555ol_int
          @ ( ( ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ M )
             != zero_zero_int )
            & ( ord_less_eq_nat @ N @ M ) ) )
        @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% exp_div_exp_eq
thf(fact_4882_exp__div__exp__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( divide_divide_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( times_times_nat
        @ ( zero_n2687167440665602831ol_nat
          @ ( ( ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M )
             != zero_zero_nat )
            & ( ord_less_eq_nat @ N @ M ) ) )
        @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% exp_div_exp_eq
thf(fact_4883_pos__eucl__rel__int__mult__2,axiom,
    ! [B: int,A: int,Q2: int,R: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ B )
     => ( ( eucl_rel_int @ A @ B @ ( product_Pair_int_int @ Q2 @ R ) )
       => ( eucl_rel_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) @ ( product_Pair_int_int @ Q2 @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ R ) ) ) ) ) ) ).

% pos_eucl_rel_int_mult_2
thf(fact_4884_divmod__step__eq,axiom,
    ! [L: num,R: code_integer,Q2: code_integer] :
      ( ( ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ L ) @ R )
       => ( ( unique4921790084139445826nteger @ L @ ( produc1086072967326762835nteger @ Q2 @ R ) )
          = ( produc1086072967326762835nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Q2 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ R @ ( numera6620942414471956472nteger @ L ) ) ) ) )
      & ( ~ ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ L ) @ R )
       => ( ( unique4921790084139445826nteger @ L @ ( produc1086072967326762835nteger @ Q2 @ R ) )
          = ( produc1086072967326762835nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Q2 ) @ R ) ) ) ) ).

% divmod_step_eq
thf(fact_4885_divmod__step__eq,axiom,
    ! [L: num,R: nat,Q2: nat] :
      ( ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ L ) @ R )
       => ( ( unique5026877609467782581ep_nat @ L @ ( product_Pair_nat_nat @ Q2 @ R ) )
          = ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Q2 ) @ one_one_nat ) @ ( minus_minus_nat @ R @ ( numeral_numeral_nat @ L ) ) ) ) )
      & ( ~ ( ord_less_eq_nat @ ( numeral_numeral_nat @ L ) @ R )
       => ( ( unique5026877609467782581ep_nat @ L @ ( product_Pair_nat_nat @ Q2 @ R ) )
          = ( product_Pair_nat_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Q2 ) @ R ) ) ) ) ).

% divmod_step_eq
thf(fact_4886_divmod__step__eq,axiom,
    ! [L: num,R: int,Q2: int] :
      ( ( ( ord_less_eq_int @ ( numeral_numeral_int @ L ) @ R )
       => ( ( unique5024387138958732305ep_int @ L @ ( product_Pair_int_int @ Q2 @ R ) )
          = ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Q2 ) @ one_one_int ) @ ( minus_minus_int @ R @ ( numeral_numeral_int @ L ) ) ) ) )
      & ( ~ ( ord_less_eq_int @ ( numeral_numeral_int @ L ) @ R )
       => ( ( unique5024387138958732305ep_int @ L @ ( product_Pair_int_int @ Q2 @ R ) )
          = ( product_Pair_int_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Q2 ) @ R ) ) ) ) ).

% divmod_step_eq
thf(fact_4887_flip__bit__0,axiom,
    ! [A: code_integer] :
      ( ( bit_se1345352211410354436nteger @ zero_zero_nat @ A )
      = ( plus_p5714425477246183910nteger @ ( zero_n356916108424825756nteger @ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ).

% flip_bit_0
thf(fact_4888_flip__bit__0,axiom,
    ! [A: code_natural] :
      ( ( bit_se168947363167071951atural @ zero_zero_nat @ A )
      = ( plus_p4538020629002901425atural @ ( zero_n8403883297036319079atural @ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) ) @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ) ).

% flip_bit_0
thf(fact_4889_flip__bit__0,axiom,
    ! [A: int] :
      ( ( bit_se2159334234014336723it_int @ zero_zero_nat @ A )
      = ( plus_plus_int @ ( zero_n2684676970156552555ol_int @ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ).

% flip_bit_0
thf(fact_4890_flip__bit__0,axiom,
    ! [A: nat] :
      ( ( bit_se2161824704523386999it_nat @ zero_zero_nat @ A )
      = ( plus_plus_nat @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% flip_bit_0
thf(fact_4891_set__bit__0,axiom,
    ! [A: int] :
      ( ( bit_se7879613467334960850it_int @ zero_zero_nat @ A )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ).

% set_bit_0
thf(fact_4892_set__bit__0,axiom,
    ! [A: code_integer] :
      ( ( bit_se2793503036327961859nteger @ zero_zero_nat @ A )
      = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ).

% set_bit_0
thf(fact_4893_set__bit__0,axiom,
    ! [A: code_natural] :
      ( ( bit_se1617098188084679374atural @ zero_zero_nat @ A )
      = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ) ).

% set_bit_0
thf(fact_4894_set__bit__0,axiom,
    ! [A: nat] :
      ( ( bit_se7882103937844011126it_nat @ zero_zero_nat @ A )
      = ( plus_plus_nat @ one_one_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% set_bit_0
thf(fact_4895_unset__bit__0,axiom,
    ! [A: int] :
      ( ( bit_se4203085406695923979it_int @ zero_zero_nat @ A )
      = ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ).

% unset_bit_0
thf(fact_4896_unset__bit__0,axiom,
    ! [A: nat] :
      ( ( bit_se4205575877204974255it_nat @ zero_zero_nat @ A )
      = ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% unset_bit_0
thf(fact_4897_unset__bit__0,axiom,
    ! [A: code_integer] :
      ( ( bit_se8260200283734997820nteger @ zero_zero_nat @ A )
      = ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ).

% unset_bit_0
thf(fact_4898_unset__bit__0,axiom,
    ! [A: code_natural] :
      ( ( bit_se7083795435491715335atural @ zero_zero_nat @ A )
      = ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ).

% unset_bit_0
thf(fact_4899_set__bit__Suc,axiom,
    ! [N: nat,A: code_natural] :
      ( ( bit_se1617098188084679374atural @ ( suc @ N ) @ A )
      = ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se1617098188084679374atural @ N @ ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ) ) ).

% set_bit_Suc
thf(fact_4900_set__bit__Suc,axiom,
    ! [N: nat,A: int] :
      ( ( bit_se7879613467334960850it_int @ ( suc @ N ) @ A )
      = ( plus_plus_int @ ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se7879613467334960850it_int @ N @ ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ).

% set_bit_Suc
thf(fact_4901_set__bit__Suc,axiom,
    ! [N: nat,A: code_integer] :
      ( ( bit_se2793503036327961859nteger @ ( suc @ N ) @ A )
      = ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se2793503036327961859nteger @ N @ ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% set_bit_Suc
thf(fact_4902_set__bit__Suc,axiom,
    ! [N: nat,A: nat] :
      ( ( bit_se7882103937844011126it_nat @ ( suc @ N ) @ A )
      = ( plus_plus_nat @ ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se7882103937844011126it_nat @ N @ ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% set_bit_Suc
thf(fact_4903_flip__bit__Suc,axiom,
    ! [N: nat,A: code_natural] :
      ( ( bit_se168947363167071951atural @ ( suc @ N ) @ A )
      = ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se168947363167071951atural @ N @ ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ) ) ).

% flip_bit_Suc
thf(fact_4904_flip__bit__Suc,axiom,
    ! [N: nat,A: int] :
      ( ( bit_se2159334234014336723it_int @ ( suc @ N ) @ A )
      = ( plus_plus_int @ ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se2159334234014336723it_int @ N @ ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ).

% flip_bit_Suc
thf(fact_4905_flip__bit__Suc,axiom,
    ! [N: nat,A: code_integer] :
      ( ( bit_se1345352211410354436nteger @ ( suc @ N ) @ A )
      = ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se1345352211410354436nteger @ N @ ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% flip_bit_Suc
thf(fact_4906_flip__bit__Suc,axiom,
    ! [N: nat,A: nat] :
      ( ( bit_se2161824704523386999it_nat @ ( suc @ N ) @ A )
      = ( plus_plus_nat @ ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se2161824704523386999it_nat @ N @ ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% flip_bit_Suc
thf(fact_4907_unset__bit__Suc,axiom,
    ! [N: nat,A: code_natural] :
      ( ( bit_se7083795435491715335atural @ ( suc @ N ) @ A )
      = ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se7083795435491715335atural @ N @ ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ) ) ).

% unset_bit_Suc
thf(fact_4908_unset__bit__Suc,axiom,
    ! [N: nat,A: int] :
      ( ( bit_se4203085406695923979it_int @ ( suc @ N ) @ A )
      = ( plus_plus_int @ ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se4203085406695923979it_int @ N @ ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ).

% unset_bit_Suc
thf(fact_4909_unset__bit__Suc,axiom,
    ! [N: nat,A: nat] :
      ( ( bit_se4205575877204974255it_nat @ ( suc @ N ) @ A )
      = ( plus_plus_nat @ ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se4205575877204974255it_nat @ N @ ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% unset_bit_Suc
thf(fact_4910_unset__bit__Suc,axiom,
    ! [N: nat,A: code_integer] :
      ( ( bit_se8260200283734997820nteger @ ( suc @ N ) @ A )
      = ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se8260200283734997820nteger @ N @ ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% unset_bit_Suc
thf(fact_4911_even__set__bit__iff,axiom,
    ! [M: nat,A: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se7879613467334960850it_int @ M @ A ) )
      = ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
        & ( M != zero_zero_nat ) ) ) ).

% even_set_bit_iff
thf(fact_4912_even__set__bit__iff,axiom,
    ! [M: nat,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se2793503036327961859nteger @ M @ A ) )
      = ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
        & ( M != zero_zero_nat ) ) ) ).

% even_set_bit_iff
thf(fact_4913_even__set__bit__iff,axiom,
    ! [M: nat,A: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se7882103937844011126it_nat @ M @ A ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
        & ( M != zero_zero_nat ) ) ) ).

% even_set_bit_iff
thf(fact_4914_even__flip__bit__iff,axiom,
    ! [M: nat,A: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se2159334234014336723it_int @ M @ A ) )
      = ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
       != ( M = zero_zero_nat ) ) ) ).

% even_flip_bit_iff
thf(fact_4915_even__flip__bit__iff,axiom,
    ! [M: nat,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se1345352211410354436nteger @ M @ A ) )
      = ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
       != ( M = zero_zero_nat ) ) ) ).

% even_flip_bit_iff
thf(fact_4916_even__flip__bit__iff,axiom,
    ! [M: nat,A: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se2161824704523386999it_nat @ M @ A ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
       != ( M = zero_zero_nat ) ) ) ).

% even_flip_bit_iff
thf(fact_4917_even__unset__bit__iff,axiom,
    ! [M: nat,A: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se4203085406695923979it_int @ M @ A ) )
      = ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
        | ( M = zero_zero_nat ) ) ) ).

% even_unset_bit_iff
thf(fact_4918_even__unset__bit__iff,axiom,
    ! [M: nat,A: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se4205575877204974255it_nat @ M @ A ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
        | ( M = zero_zero_nat ) ) ) ).

% even_unset_bit_iff
thf(fact_4919_even__unset__bit__iff,axiom,
    ! [M: nat,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se8260200283734997820nteger @ M @ A ) )
      = ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
        | ( M = zero_zero_nat ) ) ) ).

% even_unset_bit_iff
thf(fact_4920_signed__take__bit__rec,axiom,
    ( bit_ri631733984087533419it_int
    = ( ^ [N5: nat,A4: int] : ( if_int @ ( N5 = zero_zero_nat ) @ ( uminus_uminus_int @ ( modulo_modulo_int @ A4 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) @ ( plus_plus_int @ ( modulo_modulo_int @ A4 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_ri631733984087533419it_int @ ( minus_minus_nat @ N5 @ one_one_nat ) @ ( divide_divide_int @ A4 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% signed_take_bit_rec
thf(fact_4921_signed__take__bit__rec,axiom,
    ( bit_ri6519982836138164636nteger
    = ( ^ [N5: nat,A4: code_integer] : ( if_Code_integer @ ( N5 = zero_zero_nat ) @ ( uminus1351360451143612070nteger @ ( modulo364778990260209775nteger @ A4 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) @ ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A4 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_ri6519982836138164636nteger @ ( minus_minus_nat @ N5 @ one_one_nat ) @ ( divide6298287555418463151nteger @ A4 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% signed_take_bit_rec
thf(fact_4922_round__unique,axiom,
    ! [X: rat,Y3: int] :
      ( ( ord_less_rat @ ( minus_minus_rat @ X @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) @ ( ring_1_of_int_rat @ Y3 ) )
     => ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Y3 ) @ ( plus_plus_rat @ X @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) )
       => ( ( archim7778729529865785530nd_rat @ X )
          = Y3 ) ) ) ).

% round_unique
thf(fact_4923_round__altdef,axiom,
    ( archim7778729529865785530nd_rat
    = ( ^ [X4: rat] : ( if_int @ ( ord_less_eq_rat @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) @ ( archimedean_frac_rat @ X4 ) ) @ ( archim2889992004027027881ng_rat @ X4 ) @ ( archim3151403230148437115or_rat @ X4 ) ) ) ) ).

% round_altdef
thf(fact_4924_binomial__code,axiom,
    ( binomial
    = ( ^ [N5: nat,K3: nat] : ( if_nat @ ( ord_less_nat @ N5 @ K3 ) @ zero_zero_nat @ ( if_nat @ ( ord_less_nat @ N5 @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K3 ) ) @ ( binomial @ N5 @ ( minus_minus_nat @ N5 @ K3 ) ) @ ( divide_divide_nat @ ( set_fo2584398358068434914at_nat @ times_times_nat @ ( plus_plus_nat @ ( minus_minus_nat @ N5 @ K3 ) @ one_one_nat ) @ N5 @ one_one_nat ) @ ( semiri1408675320244567234ct_nat @ K3 ) ) ) ) ) ) ).

% binomial_code
thf(fact_4925_round__unique_H,axiom,
    ! [X: rat,N: int] :
      ( ( ord_less_rat @ ( abs_abs_rat @ ( minus_minus_rat @ X @ ( ring_1_of_int_rat @ N ) ) ) @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) )
     => ( ( archim7778729529865785530nd_rat @ X )
        = N ) ) ).

% round_unique'
thf(fact_4926_of__int__round__abs__le,axiom,
    ! [X: rat] : ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ ( archim7778729529865785530nd_rat @ X ) ) @ X ) ) @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) ).

% of_int_round_abs_le
thf(fact_4927_of__int__round__gt,axiom,
    ! [X: rat] : ( ord_less_rat @ ( minus_minus_rat @ X @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) @ ( ring_1_of_int_rat @ ( archim7778729529865785530nd_rat @ X ) ) ) ).

% of_int_round_gt
thf(fact_4928_signed__take__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_ri631733984087533419it_int @ N @ zero_zero_int )
      = zero_zero_int ) ).

% signed_take_bit_of_0
thf(fact_4929_signed__take__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_ri6519982836138164636nteger @ N @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% signed_take_bit_of_0
thf(fact_4930_binomial__n__n,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ N )
      = one_one_nat ) ).

% binomial_n_n
thf(fact_4931_signed__take__bit__of__minus__1,axiom,
    ! [N: nat] :
      ( ( bit_ri631733984087533419it_int @ N @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ one_one_int ) ) ).

% signed_take_bit_of_minus_1
thf(fact_4932_signed__take__bit__of__minus__1,axiom,
    ! [N: nat] :
      ( ( bit_ri6519982836138164636nteger @ N @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% signed_take_bit_of_minus_1
thf(fact_4933_binomial__0__Suc,axiom,
    ! [K: nat] :
      ( ( binomial @ zero_zero_nat @ ( suc @ K ) )
      = zero_zero_nat ) ).

% binomial_0_Suc
thf(fact_4934_binomial__1,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ ( suc @ zero_zero_nat ) )
      = N ) ).

% binomial_1
thf(fact_4935_signed__take__bit__Suc__1,axiom,
    ! [N: nat] :
      ( ( bit_ri631733984087533419it_int @ ( suc @ N ) @ one_one_int )
      = one_one_int ) ).

% signed_take_bit_Suc_1
thf(fact_4936_signed__take__bit__Suc__1,axiom,
    ! [N: nat] :
      ( ( bit_ri6519982836138164636nteger @ ( suc @ N ) @ one_one_Code_integer )
      = one_one_Code_integer ) ).

% signed_take_bit_Suc_1
thf(fact_4937_binomial__eq__0__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ( binomial @ N @ K )
        = zero_zero_nat )
      = ( ord_less_nat @ N @ K ) ) ).

% binomial_eq_0_iff
thf(fact_4938_binomial__Suc__Suc,axiom,
    ! [N: nat,K: nat] :
      ( ( binomial @ ( suc @ N ) @ ( suc @ K ) )
      = ( plus_plus_nat @ ( binomial @ N @ K ) @ ( binomial @ N @ ( suc @ K ) ) ) ) ).

% binomial_Suc_Suc
thf(fact_4939_signed__take__bit__numeral__of__1,axiom,
    ! [K: num] :
      ( ( bit_ri631733984087533419it_int @ ( numeral_numeral_nat @ K ) @ one_one_int )
      = one_one_int ) ).

% signed_take_bit_numeral_of_1
thf(fact_4940_signed__take__bit__numeral__of__1,axiom,
    ! [K: num] :
      ( ( bit_ri6519982836138164636nteger @ ( numeral_numeral_nat @ K ) @ one_one_Code_integer )
      = one_one_Code_integer ) ).

% signed_take_bit_numeral_of_1
thf(fact_4941_binomial__n__0,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ zero_zero_nat )
      = one_one_nat ) ).

% binomial_n_0
thf(fact_4942_round__0,axiom,
    ( ( archim7778729529865785530nd_rat @ zero_zero_rat )
    = zero_zero_int ) ).

% round_0
thf(fact_4943_round__1,axiom,
    ( ( archim7778729529865785530nd_rat @ one_one_rat )
    = one_one_int ) ).

% round_1
thf(fact_4944_zero__less__binomial__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( binomial @ N @ K ) )
      = ( ord_less_eq_nat @ K @ N ) ) ).

% zero_less_binomial_iff
thf(fact_4945_signed__take__bit__0,axiom,
    ! [A: int] :
      ( ( bit_ri631733984087533419it_int @ zero_zero_nat @ A )
      = ( uminus_uminus_int @ ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ).

% signed_take_bit_0
thf(fact_4946_signed__take__bit__0,axiom,
    ! [A: code_integer] :
      ( ( bit_ri6519982836138164636nteger @ zero_zero_nat @ A )
      = ( uminus1351360451143612070nteger @ ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ).

% signed_take_bit_0
thf(fact_4947_choose__one,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ one_one_nat )
      = N ) ).

% choose_one
thf(fact_4948_binomial__eq__0,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ N @ K )
     => ( ( binomial @ N @ K )
        = zero_zero_nat ) ) ).

% binomial_eq_0
thf(fact_4949_choose__mult__lemma,axiom,
    ! [M: nat,R: nat,K: nat] :
      ( ( times_times_nat @ ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ M @ R ) @ K ) @ ( plus_plus_nat @ M @ K ) ) @ ( binomial @ ( plus_plus_nat @ M @ K ) @ K ) )
      = ( times_times_nat @ ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ M @ R ) @ K ) @ K ) @ ( binomial @ ( plus_plus_nat @ M @ R ) @ M ) ) ) ).

% choose_mult_lemma
thf(fact_4950_zero__less__binomial,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ord_less_nat @ zero_zero_nat @ ( binomial @ N @ K ) ) ) ).

% zero_less_binomial
thf(fact_4951_Suc__times__binomial__add,axiom,
    ! [A: nat,B: nat] :
      ( ( times_times_nat @ ( suc @ A ) @ ( binomial @ ( suc @ ( plus_plus_nat @ A @ B ) ) @ ( suc @ A ) ) )
      = ( times_times_nat @ ( suc @ B ) @ ( binomial @ ( suc @ ( plus_plus_nat @ A @ B ) ) @ A ) ) ) ).

% Suc_times_binomial_add
thf(fact_4952_binomial__absorb__comp,axiom,
    ! [N: nat,K: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ N @ K ) @ ( binomial @ N @ K ) )
      = ( times_times_nat @ N @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ).

% binomial_absorb_comp
thf(fact_4953_binomial__absorption,axiom,
    ! [K: nat,N: nat] :
      ( ( times_times_nat @ ( suc @ K ) @ ( binomial @ N @ ( suc @ K ) ) )
      = ( times_times_nat @ N @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ).

% binomial_absorption
thf(fact_4954_choose__reduce__nat,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ( binomial @ N @ K )
          = ( plus_plus_nat @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ ( minus_minus_nat @ K @ one_one_nat ) ) @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ) ) ).

% choose_reduce_nat
thf(fact_4955_times__binomial__minus1__eq,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( times_times_nat @ K @ ( binomial @ N @ K ) )
        = ( times_times_nat @ N @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ ( minus_minus_nat @ K @ one_one_nat ) ) ) ) ) ).

% times_binomial_minus1_eq
thf(fact_4956_binomial__addition__formula,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( binomial @ N @ ( suc @ K ) )
        = ( plus_plus_nat @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ ( suc @ K ) ) @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ) ).

% binomial_addition_formula
thf(fact_4957_choose__two,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( divide_divide_nat @ ( times_times_nat @ N @ ( minus_minus_nat @ N @ one_one_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% choose_two
thf(fact_4958_round__def,axiom,
    ( archim7778729529865785530nd_rat
    = ( ^ [X4: rat] : ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X4 @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% round_def
thf(fact_4959_signed__take__bit__Suc,axiom,
    ! [N: nat,A: int] :
      ( ( bit_ri631733984087533419it_int @ ( suc @ N ) @ A )
      = ( plus_plus_int @ ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_ri631733984087533419it_int @ N @ ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ).

% signed_take_bit_Suc
thf(fact_4960_signed__take__bit__Suc,axiom,
    ! [N: nat,A: code_integer] :
      ( ( bit_ri6519982836138164636nteger @ ( suc @ N ) @ A )
      = ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_ri6519982836138164636nteger @ N @ ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% signed_take_bit_Suc
thf(fact_4961_of__int__round__le,axiom,
    ! [X: rat] : ( ord_less_eq_rat @ ( ring_1_of_int_rat @ ( archim7778729529865785530nd_rat @ X ) ) @ ( plus_plus_rat @ X @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) ) ).

% of_int_round_le
thf(fact_4962_of__int__round__ge,axiom,
    ! [X: rat] : ( ord_less_eq_rat @ ( minus_minus_rat @ X @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) @ ( ring_1_of_int_rat @ ( archim7778729529865785530nd_rat @ X ) ) ) ).

% of_int_round_ge
thf(fact_4963_set__decode__0,axiom,
    ! [X: nat] :
      ( ( member_nat @ zero_zero_nat @ ( nat_set_decode @ X ) )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ X ) ) ) ).

% set_decode_0
thf(fact_4964_set__decode__def,axiom,
    ( nat_set_decode
    = ( ^ [X4: nat] :
          ( collect_nat
          @ ^ [N5: nat] :
              ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ X4 @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N5 ) ) ) ) ) ) ).

% set_decode_def
thf(fact_4965_divmod__step__def,axiom,
    ( unique4921790084139445826nteger
    = ( ^ [L4: num] :
          ( produc6916734918728496179nteger
          @ ^ [Q4: code_integer,R4: code_integer] : ( if_Pro6119634080678213985nteger @ ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ L4 ) @ R4 ) @ ( produc1086072967326762835nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Q4 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ R4 @ ( numera6620942414471956472nteger @ L4 ) ) ) @ ( produc1086072967326762835nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Q4 ) @ R4 ) ) ) ) ) ).

% divmod_step_def
thf(fact_4966_divmod__step__def,axiom,
    ( unique5026877609467782581ep_nat
    = ( ^ [L4: num] :
          ( produc2626176000494625587at_nat
          @ ^ [Q4: nat,R4: nat] : ( if_Pro6206227464963214023at_nat @ ( ord_less_eq_nat @ ( numeral_numeral_nat @ L4 ) @ R4 ) @ ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Q4 ) @ one_one_nat ) @ ( minus_minus_nat @ R4 @ ( numeral_numeral_nat @ L4 ) ) ) @ ( product_Pair_nat_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Q4 ) @ R4 ) ) ) ) ) ).

% divmod_step_def
thf(fact_4967_divmod__step__def,axiom,
    ( unique5024387138958732305ep_int
    = ( ^ [L4: num] :
          ( produc4245557441103728435nt_int
          @ ^ [Q4: int,R4: int] : ( if_Pro3027730157355071871nt_int @ ( ord_less_eq_int @ ( numeral_numeral_int @ L4 ) @ R4 ) @ ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Q4 ) @ one_one_int ) @ ( minus_minus_int @ R4 @ ( numeral_numeral_int @ L4 ) ) ) @ ( product_Pair_int_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Q4 ) @ R4 ) ) ) ) ) ).

% divmod_step_def
thf(fact_4968_take__bit__rec,axiom,
    ( bit_se569199155075624693atural
    = ( ^ [N5: nat,A4: code_natural] : ( if_Code_natural @ ( N5 = zero_zero_nat ) @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( bit_se569199155075624693atural @ ( minus_minus_nat @ N5 @ one_one_nat ) @ ( divide5121882707175180666atural @ A4 @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) @ ( modulo8411746178871703098atural @ A4 @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ) ) ).

% take_bit_rec
thf(fact_4969_take__bit__rec,axiom,
    ( bit_se1745604003318907178nteger
    = ( ^ [N5: nat,A4: code_integer] : ( if_Code_integer @ ( N5 = zero_zero_nat ) @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( bit_se1745604003318907178nteger @ ( minus_minus_nat @ N5 @ one_one_nat ) @ ( divide6298287555418463151nteger @ A4 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( modulo364778990260209775nteger @ A4 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% take_bit_rec
thf(fact_4970_take__bit__rec,axiom,
    ( bit_se2925701944663578781it_nat
    = ( ^ [N5: nat,A4: nat] : ( if_nat @ ( N5 = zero_zero_nat ) @ zero_zero_nat @ ( plus_plus_nat @ ( times_times_nat @ ( bit_se2925701944663578781it_nat @ ( minus_minus_nat @ N5 @ one_one_nat ) @ ( divide_divide_nat @ A4 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ A4 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% take_bit_rec
thf(fact_4971_take__bit__rec,axiom,
    ( bit_se2923211474154528505it_int
    = ( ^ [N5: nat,A4: int] : ( if_int @ ( N5 = zero_zero_nat ) @ zero_zero_int @ ( plus_plus_int @ ( times_times_int @ ( bit_se2923211474154528505it_int @ ( minus_minus_nat @ N5 @ one_one_nat ) @ ( divide_divide_int @ A4 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( modulo_modulo_int @ A4 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ).

% take_bit_rec
thf(fact_4972_num_Osize__gen_I2_J,axiom,
    ! [X2: num] :
      ( ( size_num @ ( bit0 @ X2 ) )
      = ( plus_plus_nat @ ( size_num @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size_gen(2)
thf(fact_4973_divmod__divmod__step,axiom,
    ( unique3479559517661332726nteger
    = ( ^ [M5: num,N5: num] : ( if_Pro6119634080678213985nteger @ ( ord_less_num @ M5 @ N5 ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ ( numera6620942414471956472nteger @ M5 ) ) @ ( unique4921790084139445826nteger @ N5 @ ( unique3479559517661332726nteger @ M5 @ ( bit0 @ N5 ) ) ) ) ) ) ).

% divmod_divmod_step
thf(fact_4974_divmod__divmod__step,axiom,
    ( unique5055182867167087721od_nat
    = ( ^ [M5: num,N5: num] : ( if_Pro6206227464963214023at_nat @ ( ord_less_num @ M5 @ N5 ) @ ( product_Pair_nat_nat @ zero_zero_nat @ ( numeral_numeral_nat @ M5 ) ) @ ( unique5026877609467782581ep_nat @ N5 @ ( unique5055182867167087721od_nat @ M5 @ ( bit0 @ N5 ) ) ) ) ) ) ).

% divmod_divmod_step
thf(fact_4975_divmod__divmod__step,axiom,
    ( unique5052692396658037445od_int
    = ( ^ [M5: num,N5: num] : ( if_Pro3027730157355071871nt_int @ ( ord_less_num @ M5 @ N5 ) @ ( product_Pair_int_int @ zero_zero_int @ ( numeral_numeral_int @ M5 ) ) @ ( unique5024387138958732305ep_int @ N5 @ ( unique5052692396658037445od_int @ M5 @ ( bit0 @ N5 ) ) ) ) ) ) ).

% divmod_divmod_step
thf(fact_4976_Suc__0__xor__eq,axiom,
    ! [N: nat] :
      ( ( bit_se6528837805403552850or_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( minus_minus_nat @ ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
        @ ( zero_n2687167440665602831ol_nat
          @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% Suc_0_xor_eq
thf(fact_4977_take__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se1745604003318907178nteger @ N @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% take_bit_of_0
thf(fact_4978_take__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se569199155075624693atural @ N @ zero_z2226904508553997617atural )
      = zero_z2226904508553997617atural ) ).

% take_bit_of_0
thf(fact_4979_take__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se2925701944663578781it_nat @ N @ zero_zero_nat )
      = zero_zero_nat ) ).

% take_bit_of_0
thf(fact_4980_take__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se2923211474154528505it_int @ N @ zero_zero_int )
      = zero_zero_int ) ).

% take_bit_of_0
thf(fact_4981_bit_Oxor__self,axiom,
    ! [X: int] :
      ( ( bit_se6526347334894502574or_int @ X @ X )
      = zero_zero_int ) ).

% bit.xor_self
thf(fact_4982_bit_Oxor__self,axiom,
    ! [X: code_integer] :
      ( ( bit_se3222712562003087583nteger @ X @ X )
      = zero_z3403309356797280102nteger ) ).

% bit.xor_self
thf(fact_4983_xor__self__eq,axiom,
    ! [A: int] :
      ( ( bit_se6526347334894502574or_int @ A @ A )
      = zero_zero_int ) ).

% xor_self_eq
thf(fact_4984_xor__self__eq,axiom,
    ! [A: code_integer] :
      ( ( bit_se3222712562003087583nteger @ A @ A )
      = zero_z3403309356797280102nteger ) ).

% xor_self_eq
thf(fact_4985_xor__self__eq,axiom,
    ! [A: code_natural] :
      ( ( bit_se2046307713759805098atural @ A @ A )
      = zero_z2226904508553997617atural ) ).

% xor_self_eq
thf(fact_4986_xor__self__eq,axiom,
    ! [A: nat] :
      ( ( bit_se6528837805403552850or_nat @ A @ A )
      = zero_zero_nat ) ).

% xor_self_eq
thf(fact_4987_xor_Oleft__neutral,axiom,
    ! [A: int] :
      ( ( bit_se6526347334894502574or_int @ zero_zero_int @ A )
      = A ) ).

% xor.left_neutral
thf(fact_4988_xor_Oleft__neutral,axiom,
    ! [A: code_integer] :
      ( ( bit_se3222712562003087583nteger @ zero_z3403309356797280102nteger @ A )
      = A ) ).

% xor.left_neutral
thf(fact_4989_xor_Oleft__neutral,axiom,
    ! [A: code_natural] :
      ( ( bit_se2046307713759805098atural @ zero_z2226904508553997617atural @ A )
      = A ) ).

% xor.left_neutral
thf(fact_4990_xor_Oleft__neutral,axiom,
    ! [A: nat] :
      ( ( bit_se6528837805403552850or_nat @ zero_zero_nat @ A )
      = A ) ).

% xor.left_neutral
thf(fact_4991_xor_Oright__neutral,axiom,
    ! [A: int] :
      ( ( bit_se6526347334894502574or_int @ A @ zero_zero_int )
      = A ) ).

% xor.right_neutral
thf(fact_4992_xor_Oright__neutral,axiom,
    ! [A: code_integer] :
      ( ( bit_se3222712562003087583nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% xor.right_neutral
thf(fact_4993_xor_Oright__neutral,axiom,
    ! [A: code_natural] :
      ( ( bit_se2046307713759805098atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% xor.right_neutral
thf(fact_4994_xor_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( bit_se6528837805403552850or_nat @ A @ zero_zero_nat )
      = A ) ).

% xor.right_neutral
thf(fact_4995_case__prod__conv,axiom,
    ! [F: nat > nat > product_prod_nat_nat > product_prod_nat_nat,A: nat,B: nat] :
      ( ( produc27273713700761075at_nat @ F @ ( product_Pair_nat_nat @ A @ B ) )
      = ( F @ A @ B ) ) ).

% case_prod_conv
thf(fact_4996_case__prod__conv,axiom,
    ! [F: nat > nat > product_prod_nat_nat > $o,A: nat,B: nat] :
      ( ( produc8739625826339149834_nat_o @ F @ ( product_Pair_nat_nat @ A @ B ) )
      = ( F @ A @ B ) ) ).

% case_prod_conv
thf(fact_4997_case__prod__conv,axiom,
    ! [F: int > int > product_prod_int_int,A: int,B: int] :
      ( ( produc4245557441103728435nt_int @ F @ ( product_Pair_int_int @ A @ B ) )
      = ( F @ A @ B ) ) ).

% case_prod_conv
thf(fact_4998_case__prod__conv,axiom,
    ! [F: int > int > $o,A: int,B: int] :
      ( ( produc4947309494688390418_int_o @ F @ ( product_Pair_int_int @ A @ B ) )
      = ( F @ A @ B ) ) ).

% case_prod_conv
thf(fact_4999_case__prod__conv,axiom,
    ! [F: int > int > int,A: int,B: int] :
      ( ( produc8211389475949308722nt_int @ F @ ( product_Pair_int_int @ A @ B ) )
      = ( F @ A @ B ) ) ).

% case_prod_conv
thf(fact_5000_case__prod__curry,axiom,
    ! [F: product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat] :
      ( ( produc27273713700761075at_nat @ ( produc3610074571335452306at_nat @ F ) )
      = F ) ).

% case_prod_curry
thf(fact_5001_case__prod__curry,axiom,
    ! [F: product_prod_nat_nat > product_prod_nat_nat > $o] :
      ( ( produc8739625826339149834_nat_o @ ( produc3704529784387675049_nat_o @ F ) )
      = F ) ).

% case_prod_curry
thf(fact_5002_case__prod__curry,axiom,
    ! [F: product_prod_int_int > product_prod_int_int] :
      ( ( produc4245557441103728435nt_int @ ( produc8249235968001453780nt_int @ F ) )
      = F ) ).

% case_prod_curry
thf(fact_5003_case__prod__curry,axiom,
    ! [F: product_prod_int_int > $o] :
      ( ( produc4947309494688390418_int_o @ ( produc175634133007206835_int_o @ F ) )
      = F ) ).

% case_prod_curry
thf(fact_5004_case__prod__curry,axiom,
    ! [F: product_prod_int_int > int] :
      ( ( produc8211389475949308722nt_int @ ( produc1016772743285680337nt_int @ F ) )
      = F ) ).

% case_prod_curry
thf(fact_5005_curry__case__prod,axiom,
    ! [F: nat > nat > product_prod_nat_nat > product_prod_nat_nat] :
      ( ( produc3610074571335452306at_nat @ ( produc27273713700761075at_nat @ F ) )
      = F ) ).

% curry_case_prod
thf(fact_5006_curry__case__prod,axiom,
    ! [F: nat > nat > product_prod_nat_nat > $o] :
      ( ( produc3704529784387675049_nat_o @ ( produc8739625826339149834_nat_o @ F ) )
      = F ) ).

% curry_case_prod
thf(fact_5007_curry__case__prod,axiom,
    ! [F: int > int > product_prod_int_int] :
      ( ( produc8249235968001453780nt_int @ ( produc4245557441103728435nt_int @ F ) )
      = F ) ).

% curry_case_prod
thf(fact_5008_curry__case__prod,axiom,
    ! [F: int > int > $o] :
      ( ( produc175634133007206835_int_o @ ( produc4947309494688390418_int_o @ F ) )
      = F ) ).

% curry_case_prod
thf(fact_5009_curry__case__prod,axiom,
    ! [F: int > int > int] :
      ( ( produc1016772743285680337nt_int @ ( produc8211389475949308722nt_int @ F ) )
      = F ) ).

% curry_case_prod
thf(fact_5010_take__bit__0,axiom,
    ! [A: code_integer] :
      ( ( bit_se1745604003318907178nteger @ zero_zero_nat @ A )
      = zero_z3403309356797280102nteger ) ).

% take_bit_0
thf(fact_5011_take__bit__0,axiom,
    ! [A: code_natural] :
      ( ( bit_se569199155075624693atural @ zero_zero_nat @ A )
      = zero_z2226904508553997617atural ) ).

% take_bit_0
thf(fact_5012_take__bit__0,axiom,
    ! [A: nat] :
      ( ( bit_se2925701944663578781it_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% take_bit_0
thf(fact_5013_take__bit__0,axiom,
    ! [A: int] :
      ( ( bit_se2923211474154528505it_int @ zero_zero_nat @ A )
      = zero_zero_int ) ).

% take_bit_0
thf(fact_5014_take__bit__Suc__1,axiom,
    ! [N: nat] :
      ( ( bit_se1745604003318907178nteger @ ( suc @ N ) @ one_one_Code_integer )
      = one_one_Code_integer ) ).

% take_bit_Suc_1
thf(fact_5015_take__bit__Suc__1,axiom,
    ! [N: nat] :
      ( ( bit_se569199155075624693atural @ ( suc @ N ) @ one_one_Code_natural )
      = one_one_Code_natural ) ).

% take_bit_Suc_1
thf(fact_5016_take__bit__Suc__1,axiom,
    ! [N: nat] :
      ( ( bit_se2925701944663578781it_nat @ ( suc @ N ) @ one_one_nat )
      = one_one_nat ) ).

% take_bit_Suc_1
thf(fact_5017_take__bit__Suc__1,axiom,
    ! [N: nat] :
      ( ( bit_se2923211474154528505it_int @ ( suc @ N ) @ one_one_int )
      = one_one_int ) ).

% take_bit_Suc_1
thf(fact_5018_take__bit__numeral__1,axiom,
    ! [L: num] :
      ( ( bit_se1745604003318907178nteger @ ( numeral_numeral_nat @ L ) @ one_one_Code_integer )
      = one_one_Code_integer ) ).

% take_bit_numeral_1
thf(fact_5019_take__bit__numeral__1,axiom,
    ! [L: num] :
      ( ( bit_se569199155075624693atural @ ( numeral_numeral_nat @ L ) @ one_one_Code_natural )
      = one_one_Code_natural ) ).

% take_bit_numeral_1
thf(fact_5020_take__bit__numeral__1,axiom,
    ! [L: num] :
      ( ( bit_se2925701944663578781it_nat @ ( numeral_numeral_nat @ L ) @ one_one_nat )
      = one_one_nat ) ).

% take_bit_numeral_1
thf(fact_5021_take__bit__numeral__1,axiom,
    ! [L: num] :
      ( ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ L ) @ one_one_int )
      = one_one_int ) ).

% take_bit_numeral_1
thf(fact_5022_take__bit__of__1__eq__0__iff,axiom,
    ! [N: nat] :
      ( ( ( bit_se1745604003318907178nteger @ N @ one_one_Code_integer )
        = zero_z3403309356797280102nteger )
      = ( N = zero_zero_nat ) ) ).

% take_bit_of_1_eq_0_iff
thf(fact_5023_take__bit__of__1__eq__0__iff,axiom,
    ! [N: nat] :
      ( ( ( bit_se569199155075624693atural @ N @ one_one_Code_natural )
        = zero_z2226904508553997617atural )
      = ( N = zero_zero_nat ) ) ).

% take_bit_of_1_eq_0_iff
thf(fact_5024_take__bit__of__1__eq__0__iff,axiom,
    ! [N: nat] :
      ( ( ( bit_se2925701944663578781it_nat @ N @ one_one_nat )
        = zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% take_bit_of_1_eq_0_iff
thf(fact_5025_take__bit__of__1__eq__0__iff,axiom,
    ! [N: nat] :
      ( ( ( bit_se2923211474154528505it_int @ N @ one_one_int )
        = zero_zero_int )
      = ( N = zero_zero_nat ) ) ).

% take_bit_of_1_eq_0_iff
thf(fact_5026_take__bit__of__Suc__0,axiom,
    ! [N: nat] :
      ( ( bit_se2925701944663578781it_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( zero_n2687167440665602831ol_nat @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% take_bit_of_Suc_0
thf(fact_5027_divmod__algorithm__code_I2_J,axiom,
    ! [M: num] :
      ( ( unique5052692396658037445od_int @ M @ one )
      = ( product_Pair_int_int @ ( numeral_numeral_int @ M ) @ zero_zero_int ) ) ).

% divmod_algorithm_code(2)
thf(fact_5028_divmod__algorithm__code_I2_J,axiom,
    ! [M: num] :
      ( ( unique5055182867167087721od_nat @ M @ one )
      = ( product_Pair_nat_nat @ ( numeral_numeral_nat @ M ) @ zero_zero_nat ) ) ).

% divmod_algorithm_code(2)
thf(fact_5029_divmod__algorithm__code_I2_J,axiom,
    ! [M: num] :
      ( ( unique3479559517661332726nteger @ M @ one )
      = ( produc1086072967326762835nteger @ ( numera6620942414471956472nteger @ M ) @ zero_z3403309356797280102nteger ) ) ).

% divmod_algorithm_code(2)
thf(fact_5030_take__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se1745604003318907178nteger @ N @ one_one_Code_integer )
      = ( zero_n356916108424825756nteger @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% take_bit_of_1
thf(fact_5031_take__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se569199155075624693atural @ N @ one_one_Code_natural )
      = ( zero_n8403883297036319079atural @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% take_bit_of_1
thf(fact_5032_take__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se2925701944663578781it_nat @ N @ one_one_nat )
      = ( zero_n2687167440665602831ol_nat @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% take_bit_of_1
thf(fact_5033_take__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se2923211474154528505it_int @ N @ one_one_int )
      = ( zero_n2684676970156552555ol_int @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% take_bit_of_1
thf(fact_5034_even__take__bit__eq,axiom,
    ! [N: nat,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se1745604003318907178nteger @ N @ A ) )
      = ( ( N = zero_zero_nat )
        | ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_take_bit_eq
thf(fact_5035_even__take__bit__eq,axiom,
    ! [N: nat,A: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se2925701944663578781it_nat @ N @ A ) )
      = ( ( N = zero_zero_nat )
        | ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_take_bit_eq
thf(fact_5036_even__take__bit__eq,axiom,
    ! [N: nat,A: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se2923211474154528505it_int @ N @ A ) )
      = ( ( N = zero_zero_nat )
        | ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_take_bit_eq
thf(fact_5037_divmod__algorithm__code_I3_J,axiom,
    ! [N: num] :
      ( ( unique5052692396658037445od_int @ one @ ( bit0 @ N ) )
      = ( product_Pair_int_int @ zero_zero_int @ ( numeral_numeral_int @ one ) ) ) ).

% divmod_algorithm_code(3)
thf(fact_5038_divmod__algorithm__code_I3_J,axiom,
    ! [N: num] :
      ( ( unique5055182867167087721od_nat @ one @ ( bit0 @ N ) )
      = ( product_Pair_nat_nat @ zero_zero_nat @ ( numeral_numeral_nat @ one ) ) ) ).

% divmod_algorithm_code(3)
thf(fact_5039_divmod__algorithm__code_I3_J,axiom,
    ! [N: num] :
      ( ( unique3479559517661332726nteger @ one @ ( bit0 @ N ) )
      = ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ ( numera6620942414471956472nteger @ one ) ) ) ).

% divmod_algorithm_code(3)
thf(fact_5040_take__bit__Suc__0,axiom,
    ! [A: code_integer] :
      ( ( bit_se1745604003318907178nteger @ ( suc @ zero_zero_nat ) @ A )
      = ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ).

% take_bit_Suc_0
thf(fact_5041_take__bit__Suc__0,axiom,
    ! [A: nat] :
      ( ( bit_se2925701944663578781it_nat @ ( suc @ zero_zero_nat ) @ A )
      = ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% take_bit_Suc_0
thf(fact_5042_take__bit__Suc__0,axiom,
    ! [A: int] :
      ( ( bit_se2923211474154528505it_int @ ( suc @ zero_zero_nat ) @ A )
      = ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% take_bit_Suc_0
thf(fact_5043_divmod__algorithm__code_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( unique5052692396658037445od_int @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( produc4245557441103728435nt_int
        @ ^ [Q4: int,R4: int] : ( product_Pair_int_int @ Q4 @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ R4 ) )
        @ ( unique5052692396658037445od_int @ M @ N ) ) ) ).

% divmod_algorithm_code(5)
thf(fact_5044_divmod__algorithm__code_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( unique5055182867167087721od_nat @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( produc2626176000494625587at_nat
        @ ^ [Q4: nat,R4: nat] : ( product_Pair_nat_nat @ Q4 @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ R4 ) )
        @ ( unique5055182867167087721od_nat @ M @ N ) ) ) ).

% divmod_algorithm_code(5)
thf(fact_5045_divmod__algorithm__code_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( unique3479559517661332726nteger @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( produc6916734918728496179nteger
        @ ^ [Q4: code_integer,R4: code_integer] : ( produc1086072967326762835nteger @ Q4 @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ R4 ) )
        @ ( unique3479559517661332726nteger @ M @ N ) ) ) ).

% divmod_algorithm_code(5)
thf(fact_5046_case__prod__app,axiom,
    ( produc27273713700761075at_nat
    = ( ^ [F2: nat > nat > product_prod_nat_nat > product_prod_nat_nat,X4: product_prod_nat_nat,Y: product_prod_nat_nat] :
          ( produc2626176000494625587at_nat
          @ ^ [L4: nat,R4: nat] : ( F2 @ L4 @ R4 @ Y )
          @ X4 ) ) ) ).

% case_prod_app
thf(fact_5047_case__prod__app,axiom,
    ( produc8739625826339149834_nat_o
    = ( ^ [F2: nat > nat > product_prod_nat_nat > $o,X4: product_prod_nat_nat,Y: product_prod_nat_nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [L4: nat,R4: nat] : ( F2 @ L4 @ R4 @ Y )
          @ X4 ) ) ) ).

% case_prod_app
thf(fact_5048_prod_Ocase__distrib,axiom,
    ! [H: $o > $o,F: int > int > $o,Prod: product_prod_int_int] :
      ( ( H @ ( produc4947309494688390418_int_o @ F @ Prod ) )
      = ( produc4947309494688390418_int_o
        @ ^ [X12: int,X23: int] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_5049_prod_Ocase__distrib,axiom,
    ! [H: $o > int,F: int > int > $o,Prod: product_prod_int_int] :
      ( ( H @ ( produc4947309494688390418_int_o @ F @ Prod ) )
      = ( produc8211389475949308722nt_int
        @ ^ [X12: int,X23: int] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_5050_prod_Ocase__distrib,axiom,
    ! [H: int > $o,F: int > int > int,Prod: product_prod_int_int] :
      ( ( H @ ( produc8211389475949308722nt_int @ F @ Prod ) )
      = ( produc4947309494688390418_int_o
        @ ^ [X12: int,X23: int] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_5051_prod_Ocase__distrib,axiom,
    ! [H: int > int,F: int > int > int,Prod: product_prod_int_int] :
      ( ( H @ ( produc8211389475949308722nt_int @ F @ Prod ) )
      = ( produc8211389475949308722nt_int
        @ ^ [X12: int,X23: int] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_5052_prod_Ocase__distrib,axiom,
    ! [H: product_prod_int_int > $o,F: int > int > product_prod_int_int,Prod: product_prod_int_int] :
      ( ( H @ ( produc4245557441103728435nt_int @ F @ Prod ) )
      = ( produc4947309494688390418_int_o
        @ ^ [X12: int,X23: int] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_5053_prod_Ocase__distrib,axiom,
    ! [H: product_prod_int_int > int,F: int > int > product_prod_int_int,Prod: product_prod_int_int] :
      ( ( H @ ( produc4245557441103728435nt_int @ F @ Prod ) )
      = ( produc8211389475949308722nt_int
        @ ^ [X12: int,X23: int] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_5054_prod_Ocase__distrib,axiom,
    ! [H: $o > product_prod_int_int,F: int > int > $o,Prod: product_prod_int_int] :
      ( ( H @ ( produc4947309494688390418_int_o @ F @ Prod ) )
      = ( produc4245557441103728435nt_int
        @ ^ [X12: int,X23: int] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_5055_prod_Ocase__distrib,axiom,
    ! [H: int > product_prod_int_int,F: int > int > int,Prod: product_prod_int_int] :
      ( ( H @ ( produc8211389475949308722nt_int @ F @ Prod ) )
      = ( produc4245557441103728435nt_int
        @ ^ [X12: int,X23: int] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_5056_prod_Ocase__distrib,axiom,
    ! [H: product_prod_int_int > product_prod_int_int,F: int > int > product_prod_int_int,Prod: product_prod_int_int] :
      ( ( H @ ( produc4245557441103728435nt_int @ F @ Prod ) )
      = ( produc4245557441103728435nt_int
        @ ^ [X12: int,X23: int] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_5057_prod_Ocase__distrib,axiom,
    ! [H: ( product_prod_nat_nat > $o ) > product_prod_nat_nat > $o,F: nat > nat > product_prod_nat_nat > $o,Prod: product_prod_nat_nat] :
      ( ( H @ ( produc8739625826339149834_nat_o @ F @ Prod ) )
      = ( produc8739625826339149834_nat_o
        @ ^ [X12: nat,X23: nat] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_5058_take__bit__add,axiom,
    ! [N: nat,A: nat,B: nat] :
      ( ( bit_se2925701944663578781it_nat @ N @ ( plus_plus_nat @ ( bit_se2925701944663578781it_nat @ N @ A ) @ ( bit_se2925701944663578781it_nat @ N @ B ) ) )
      = ( bit_se2925701944663578781it_nat @ N @ ( plus_plus_nat @ A @ B ) ) ) ).

% take_bit_add
thf(fact_5059_take__bit__add,axiom,
    ! [N: nat,A: int,B: int] :
      ( ( bit_se2923211474154528505it_int @ N @ ( plus_plus_int @ ( bit_se2923211474154528505it_int @ N @ A ) @ ( bit_se2923211474154528505it_int @ N @ B ) ) )
      = ( bit_se2923211474154528505it_int @ N @ ( plus_plus_int @ A @ B ) ) ) ).

% take_bit_add
thf(fact_5060_old_Oprod_Ocase,axiom,
    ! [F: nat > nat > product_prod_nat_nat > product_prod_nat_nat,X1: nat,X2: nat] :
      ( ( produc27273713700761075at_nat @ F @ ( product_Pair_nat_nat @ X1 @ X2 ) )
      = ( F @ X1 @ X2 ) ) ).

% old.prod.case
thf(fact_5061_old_Oprod_Ocase,axiom,
    ! [F: nat > nat > product_prod_nat_nat > $o,X1: nat,X2: nat] :
      ( ( produc8739625826339149834_nat_o @ F @ ( product_Pair_nat_nat @ X1 @ X2 ) )
      = ( F @ X1 @ X2 ) ) ).

% old.prod.case
thf(fact_5062_old_Oprod_Ocase,axiom,
    ! [F: int > int > product_prod_int_int,X1: int,X2: int] :
      ( ( produc4245557441103728435nt_int @ F @ ( product_Pair_int_int @ X1 @ X2 ) )
      = ( F @ X1 @ X2 ) ) ).

% old.prod.case
thf(fact_5063_old_Oprod_Ocase,axiom,
    ! [F: int > int > $o,X1: int,X2: int] :
      ( ( produc4947309494688390418_int_o @ F @ ( product_Pair_int_int @ X1 @ X2 ) )
      = ( F @ X1 @ X2 ) ) ).

% old.prod.case
thf(fact_5064_old_Oprod_Ocase,axiom,
    ! [F: int > int > int,X1: int,X2: int] :
      ( ( produc8211389475949308722nt_int @ F @ ( product_Pair_int_int @ X1 @ X2 ) )
      = ( F @ X1 @ X2 ) ) ).

% old.prod.case
thf(fact_5065_split__cong,axiom,
    ! [Q2: product_prod_nat_nat,F: nat > nat > product_prod_nat_nat > product_prod_nat_nat,G: nat > nat > product_prod_nat_nat > product_prod_nat_nat,P4: product_prod_nat_nat] :
      ( ! [X5: nat,Y4: nat] :
          ( ( ( product_Pair_nat_nat @ X5 @ Y4 )
            = Q2 )
         => ( ( F @ X5 @ Y4 )
            = ( G @ X5 @ Y4 ) ) )
     => ( ( P4 = Q2 )
       => ( ( produc27273713700761075at_nat @ F @ P4 )
          = ( produc27273713700761075at_nat @ G @ Q2 ) ) ) ) ).

% split_cong
thf(fact_5066_split__cong,axiom,
    ! [Q2: product_prod_nat_nat,F: nat > nat > product_prod_nat_nat > $o,G: nat > nat > product_prod_nat_nat > $o,P4: product_prod_nat_nat] :
      ( ! [X5: nat,Y4: nat] :
          ( ( ( product_Pair_nat_nat @ X5 @ Y4 )
            = Q2 )
         => ( ( F @ X5 @ Y4 )
            = ( G @ X5 @ Y4 ) ) )
     => ( ( P4 = Q2 )
       => ( ( produc8739625826339149834_nat_o @ F @ P4 )
          = ( produc8739625826339149834_nat_o @ G @ Q2 ) ) ) ) ).

% split_cong
thf(fact_5067_split__cong,axiom,
    ! [Q2: product_prod_int_int,F: int > int > product_prod_int_int,G: int > int > product_prod_int_int,P4: product_prod_int_int] :
      ( ! [X5: int,Y4: int] :
          ( ( ( product_Pair_int_int @ X5 @ Y4 )
            = Q2 )
         => ( ( F @ X5 @ Y4 )
            = ( G @ X5 @ Y4 ) ) )
     => ( ( P4 = Q2 )
       => ( ( produc4245557441103728435nt_int @ F @ P4 )
          = ( produc4245557441103728435nt_int @ G @ Q2 ) ) ) ) ).

% split_cong
thf(fact_5068_split__cong,axiom,
    ! [Q2: product_prod_int_int,F: int > int > $o,G: int > int > $o,P4: product_prod_int_int] :
      ( ! [X5: int,Y4: int] :
          ( ( ( product_Pair_int_int @ X5 @ Y4 )
            = Q2 )
         => ( ( F @ X5 @ Y4 )
            = ( G @ X5 @ Y4 ) ) )
     => ( ( P4 = Q2 )
       => ( ( produc4947309494688390418_int_o @ F @ P4 )
          = ( produc4947309494688390418_int_o @ G @ Q2 ) ) ) ) ).

% split_cong
thf(fact_5069_split__cong,axiom,
    ! [Q2: product_prod_int_int,F: int > int > int,G: int > int > int,P4: product_prod_int_int] :
      ( ! [X5: int,Y4: int] :
          ( ( ( product_Pair_int_int @ X5 @ Y4 )
            = Q2 )
         => ( ( F @ X5 @ Y4 )
            = ( G @ X5 @ Y4 ) ) )
     => ( ( P4 = Q2 )
       => ( ( produc8211389475949308722nt_int @ F @ P4 )
          = ( produc8211389475949308722nt_int @ G @ Q2 ) ) ) ) ).

% split_cong
thf(fact_5070_case__prod__Pair__iden,axiom,
    ! [P4: produc8763457246119570046nteger] :
      ( ( produc3906647086178084059nteger @ produc6137756002093451184nteger @ P4 )
      = P4 ) ).

% case_prod_Pair_iden
thf(fact_5071_case__prod__Pair__iden,axiom,
    ! [P4: produc989692990947075319atural] :
      ( ( produc1300469243244976333atural @ produc3831813291587773865atural @ P4 )
      = P4 ) ).

% case_prod_Pair_iden
thf(fact_5072_case__prod__Pair__iden,axiom,
    ! [P4: produc1908205239877642774nteger] :
      ( ( produc6512950862096126219nteger @ produc8603105652947943368nteger @ P4 )
      = P4 ) ).

% case_prod_Pair_iden
thf(fact_5073_case__prod__Pair__iden,axiom,
    ! [P4: produc2285326912895808259nt_int] :
      ( ( produc8492565224438309093nt_int @ produc5700946648718959541nt_int @ P4 )
      = P4 ) ).

% case_prod_Pair_iden
thf(fact_5074_case__prod__Pair__iden,axiom,
    ! [P4: produc7773217078559923341nt_int] :
      ( ( produc5122537100556696953nt_int @ produc4305682042979456191nt_int @ P4 )
      = P4 ) ).

% case_prod_Pair_iden
thf(fact_5075_case__prod__Pair__iden,axiom,
    ! [P4: product_prod_int_int] :
      ( ( produc4245557441103728435nt_int @ product_Pair_int_int @ P4 )
      = P4 ) ).

% case_prod_Pair_iden
thf(fact_5076_case__prodE2,axiom,
    ! [Q: ( product_prod_nat_nat > product_prod_nat_nat ) > $o,P: nat > nat > product_prod_nat_nat > product_prod_nat_nat,Z: product_prod_nat_nat] :
      ( ( Q @ ( produc27273713700761075at_nat @ P @ Z ) )
     => ~ ! [X5: nat,Y4: nat] :
            ( ( Z
              = ( product_Pair_nat_nat @ X5 @ Y4 ) )
           => ~ ( Q @ ( P @ X5 @ Y4 ) ) ) ) ).

% case_prodE2
thf(fact_5077_case__prodE2,axiom,
    ! [Q: ( product_prod_nat_nat > $o ) > $o,P: nat > nat > product_prod_nat_nat > $o,Z: product_prod_nat_nat] :
      ( ( Q @ ( produc8739625826339149834_nat_o @ P @ Z ) )
     => ~ ! [X5: nat,Y4: nat] :
            ( ( Z
              = ( product_Pair_nat_nat @ X5 @ Y4 ) )
           => ~ ( Q @ ( P @ X5 @ Y4 ) ) ) ) ).

% case_prodE2
thf(fact_5078_case__prodE2,axiom,
    ! [Q: product_prod_int_int > $o,P: int > int > product_prod_int_int,Z: product_prod_int_int] :
      ( ( Q @ ( produc4245557441103728435nt_int @ P @ Z ) )
     => ~ ! [X5: int,Y4: int] :
            ( ( Z
              = ( product_Pair_int_int @ X5 @ Y4 ) )
           => ~ ( Q @ ( P @ X5 @ Y4 ) ) ) ) ).

% case_prodE2
thf(fact_5079_case__prodE2,axiom,
    ! [Q: $o > $o,P: int > int > $o,Z: product_prod_int_int] :
      ( ( Q @ ( produc4947309494688390418_int_o @ P @ Z ) )
     => ~ ! [X5: int,Y4: int] :
            ( ( Z
              = ( product_Pair_int_int @ X5 @ Y4 ) )
           => ~ ( Q @ ( P @ X5 @ Y4 ) ) ) ) ).

% case_prodE2
thf(fact_5080_case__prodE2,axiom,
    ! [Q: int > $o,P: int > int > int,Z: product_prod_int_int] :
      ( ( Q @ ( produc8211389475949308722nt_int @ P @ Z ) )
     => ~ ! [X5: int,Y4: int] :
            ( ( Z
              = ( product_Pair_int_int @ X5 @ Y4 ) )
           => ~ ( Q @ ( P @ X5 @ Y4 ) ) ) ) ).

% case_prodE2
thf(fact_5081_case__prod__eta,axiom,
    ! [F: product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat] :
      ( ( produc27273713700761075at_nat
        @ ^ [X4: nat,Y: nat] : ( F @ ( product_Pair_nat_nat @ X4 @ Y ) ) )
      = F ) ).

% case_prod_eta
thf(fact_5082_case__prod__eta,axiom,
    ! [F: product_prod_nat_nat > product_prod_nat_nat > $o] :
      ( ( produc8739625826339149834_nat_o
        @ ^ [X4: nat,Y: nat] : ( F @ ( product_Pair_nat_nat @ X4 @ Y ) ) )
      = F ) ).

% case_prod_eta
thf(fact_5083_case__prod__eta,axiom,
    ! [F: product_prod_int_int > product_prod_int_int] :
      ( ( produc4245557441103728435nt_int
        @ ^ [X4: int,Y: int] : ( F @ ( product_Pair_int_int @ X4 @ Y ) ) )
      = F ) ).

% case_prod_eta
thf(fact_5084_case__prod__eta,axiom,
    ! [F: product_prod_int_int > $o] :
      ( ( produc4947309494688390418_int_o
        @ ^ [X4: int,Y: int] : ( F @ ( product_Pair_int_int @ X4 @ Y ) ) )
      = F ) ).

% case_prod_eta
thf(fact_5085_case__prod__eta,axiom,
    ! [F: product_prod_int_int > int] :
      ( ( produc8211389475949308722nt_int
        @ ^ [X4: int,Y: int] : ( F @ ( product_Pair_int_int @ X4 @ Y ) ) )
      = F ) ).

% case_prod_eta
thf(fact_5086_cond__case__prod__eta,axiom,
    ! [F: nat > nat > product_prod_nat_nat > product_prod_nat_nat,G: product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat] :
      ( ! [X5: nat,Y4: nat] :
          ( ( F @ X5 @ Y4 )
          = ( G @ ( product_Pair_nat_nat @ X5 @ Y4 ) ) )
     => ( ( produc27273713700761075at_nat @ F )
        = G ) ) ).

% cond_case_prod_eta
thf(fact_5087_cond__case__prod__eta,axiom,
    ! [F: nat > nat > product_prod_nat_nat > $o,G: product_prod_nat_nat > product_prod_nat_nat > $o] :
      ( ! [X5: nat,Y4: nat] :
          ( ( F @ X5 @ Y4 )
          = ( G @ ( product_Pair_nat_nat @ X5 @ Y4 ) ) )
     => ( ( produc8739625826339149834_nat_o @ F )
        = G ) ) ).

% cond_case_prod_eta
thf(fact_5088_cond__case__prod__eta,axiom,
    ! [F: int > int > product_prod_int_int,G: product_prod_int_int > product_prod_int_int] :
      ( ! [X5: int,Y4: int] :
          ( ( F @ X5 @ Y4 )
          = ( G @ ( product_Pair_int_int @ X5 @ Y4 ) ) )
     => ( ( produc4245557441103728435nt_int @ F )
        = G ) ) ).

% cond_case_prod_eta
thf(fact_5089_cond__case__prod__eta,axiom,
    ! [F: int > int > $o,G: product_prod_int_int > $o] :
      ( ! [X5: int,Y4: int] :
          ( ( F @ X5 @ Y4 )
          = ( G @ ( product_Pair_int_int @ X5 @ Y4 ) ) )
     => ( ( produc4947309494688390418_int_o @ F )
        = G ) ) ).

% cond_case_prod_eta
thf(fact_5090_cond__case__prod__eta,axiom,
    ! [F: int > int > int,G: product_prod_int_int > int] :
      ( ! [X5: int,Y4: int] :
          ( ( F @ X5 @ Y4 )
          = ( G @ ( product_Pair_int_int @ X5 @ Y4 ) ) )
     => ( ( produc8211389475949308722nt_int @ F )
        = G ) ) ).

% cond_case_prod_eta
thf(fact_5091_divmod__step__integer__def,axiom,
    ( unique4921790084139445826nteger
    = ( ^ [L4: num] :
          ( produc6916734918728496179nteger
          @ ^ [Q4: code_integer,R4: code_integer] : ( if_Pro6119634080678213985nteger @ ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ L4 ) @ R4 ) @ ( produc1086072967326762835nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Q4 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ R4 @ ( numera6620942414471956472nteger @ L4 ) ) ) @ ( produc1086072967326762835nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Q4 ) @ R4 ) ) ) ) ) ).

% divmod_step_integer_def
thf(fact_5092_internal__case__prod__def,axiom,
    produc1854806715440696265at_nat = produc27273713700761075at_nat ).

% internal_case_prod_def
thf(fact_5093_internal__case__prod__def,axiom,
    produc4780622933104268256_nat_o = produc8739625826339149834_nat_o ).

% internal_case_prod_def
thf(fact_5094_internal__case__prod__def,axiom,
    produc297006045350968285nt_int = produc4245557441103728435nt_int ).

% internal_case_prod_def
thf(fact_5095_internal__case__prod__def,axiom,
    produc8005341501107743676_int_o = produc4947309494688390418_int_o ).

% internal_case_prod_def
thf(fact_5096_internal__case__prod__def,axiom,
    produc7926200574084438792nt_int = produc8211389475949308722nt_int ).

% internal_case_prod_def
thf(fact_5097_num_Osize__gen_I1_J,axiom,
    ( ( size_num @ one )
    = zero_zero_nat ) ).

% num.size_gen(1)
thf(fact_5098_divmod__int__def,axiom,
    ( unique5052692396658037445od_int
    = ( ^ [M5: num,N5: num] : ( product_Pair_int_int @ ( divide_divide_int @ ( numeral_numeral_int @ M5 ) @ ( numeral_numeral_int @ N5 ) ) @ ( modulo_modulo_int @ ( numeral_numeral_int @ M5 ) @ ( numeral_numeral_int @ N5 ) ) ) ) ) ).

% divmod_int_def
thf(fact_5099_take__bit__eq__0__iff,axiom,
    ! [N: nat,A: code_natural] :
      ( ( ( bit_se569199155075624693atural @ N @ A )
        = zero_z2226904508553997617atural )
      = ( dvd_dvd_Code_natural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) @ A ) ) ).

% take_bit_eq_0_iff
thf(fact_5100_take__bit__eq__0__iff,axiom,
    ! [N: nat,A: code_integer] :
      ( ( ( bit_se1745604003318907178nteger @ N @ A )
        = zero_z3403309356797280102nteger )
      = ( dvd_dvd_Code_integer @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) @ A ) ) ).

% take_bit_eq_0_iff
thf(fact_5101_take__bit__eq__0__iff,axiom,
    ! [N: nat,A: nat] :
      ( ( ( bit_se2925701944663578781it_nat @ N @ A )
        = zero_zero_nat )
      = ( dvd_dvd_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ A ) ) ).

% take_bit_eq_0_iff
thf(fact_5102_take__bit__eq__0__iff,axiom,
    ! [N: nat,A: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ A )
        = zero_zero_int )
      = ( dvd_dvd_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ A ) ) ).

% take_bit_eq_0_iff
thf(fact_5103_divmod__def,axiom,
    ( unique5052692396658037445od_int
    = ( ^ [M5: num,N5: num] : ( product_Pair_int_int @ ( divide_divide_int @ ( numeral_numeral_int @ M5 ) @ ( numeral_numeral_int @ N5 ) ) @ ( modulo_modulo_int @ ( numeral_numeral_int @ M5 ) @ ( numeral_numeral_int @ N5 ) ) ) ) ) ).

% divmod_def
thf(fact_5104_divmod__def,axiom,
    ( unique5055182867167087721od_nat
    = ( ^ [M5: num,N5: num] : ( product_Pair_nat_nat @ ( divide_divide_nat @ ( numeral_numeral_nat @ M5 ) @ ( numeral_numeral_nat @ N5 ) ) @ ( modulo_modulo_nat @ ( numeral_numeral_nat @ M5 ) @ ( numeral_numeral_nat @ N5 ) ) ) ) ) ).

% divmod_def
thf(fact_5105_divmod__def,axiom,
    ( unique3479559517661332726nteger
    = ( ^ [M5: num,N5: num] : ( produc1086072967326762835nteger @ ( divide6298287555418463151nteger @ ( numera6620942414471956472nteger @ M5 ) @ ( numera6620942414471956472nteger @ N5 ) ) @ ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ M5 ) @ ( numera6620942414471956472nteger @ N5 ) ) ) ) ) ).

% divmod_def
thf(fact_5106_divmod_H__nat__def,axiom,
    ( unique5055182867167087721od_nat
    = ( ^ [M5: num,N5: num] : ( product_Pair_nat_nat @ ( divide_divide_nat @ ( numeral_numeral_nat @ M5 ) @ ( numeral_numeral_nat @ N5 ) ) @ ( modulo_modulo_nat @ ( numeral_numeral_nat @ M5 ) @ ( numeral_numeral_nat @ N5 ) ) ) ) ) ).

% divmod'_nat_def
thf(fact_5107_take__bit__Suc__minus__1__eq,axiom,
    ! [N: nat] :
      ( ( bit_se1745604003318907178nteger @ ( suc @ N ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( suc @ N ) ) @ one_one_Code_integer ) ) ).

% take_bit_Suc_minus_1_eq
thf(fact_5108_take__bit__Suc__minus__1__eq,axiom,
    ! [N: nat] :
      ( ( bit_se2923211474154528505it_int @ ( suc @ N ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( suc @ N ) ) @ one_one_int ) ) ).

% take_bit_Suc_minus_1_eq
thf(fact_5109_take__bit__Suc,axiom,
    ! [N: nat,A: code_natural] :
      ( ( bit_se569199155075624693atural @ ( suc @ N ) @ A )
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( bit_se569199155075624693atural @ N @ ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) @ ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ).

% take_bit_Suc
thf(fact_5110_take__bit__Suc,axiom,
    ! [N: nat,A: code_integer] :
      ( ( bit_se1745604003318907178nteger @ ( suc @ N ) @ A )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( bit_se1745604003318907178nteger @ N @ ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ).

% take_bit_Suc
thf(fact_5111_take__bit__Suc,axiom,
    ! [N: nat,A: nat] :
      ( ( bit_se2925701944663578781it_nat @ ( suc @ N ) @ A )
      = ( plus_plus_nat @ ( times_times_nat @ ( bit_se2925701944663578781it_nat @ N @ ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% take_bit_Suc
thf(fact_5112_take__bit__Suc,axiom,
    ! [N: nat,A: int] :
      ( ( bit_se2923211474154528505it_int @ ( suc @ N ) @ A )
      = ( plus_plus_int @ ( times_times_int @ ( bit_se2923211474154528505it_int @ N @ ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ).

% take_bit_Suc
thf(fact_5113_take__bit__numeral__minus__1__eq,axiom,
    ! [K: num] :
      ( ( bit_se1745604003318907178nteger @ ( numeral_numeral_nat @ K ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ K ) ) @ one_one_Code_integer ) ) ).

% take_bit_numeral_minus_1_eq
thf(fact_5114_take__bit__numeral__minus__1__eq,axiom,
    ! [K: num] :
      ( ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ K ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ K ) ) @ one_one_int ) ) ).

% take_bit_numeral_minus_1_eq
thf(fact_5115_take__bit__int__less__eq,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ ( minus_minus_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% take_bit_int_less_eq
thf(fact_5116_xor__nat__unfold,axiom,
    ( bit_se6528837805403552850or_nat
    = ( ^ [M5: nat,N5: nat] : ( if_nat @ ( M5 = zero_zero_nat ) @ N5 @ ( if_nat @ ( N5 = zero_zero_nat ) @ M5 @ ( plus_plus_nat @ ( modulo_modulo_nat @ ( plus_plus_nat @ ( modulo_modulo_nat @ M5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ N5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se6528837805403552850or_nat @ ( divide_divide_nat @ M5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% xor_nat_unfold
thf(fact_5117_xor__nat__rec,axiom,
    ( bit_se6528837805403552850or_nat
    = ( ^ [M5: nat,N5: nat] :
          ( plus_plus_nat
          @ ( zero_n2687167440665602831ol_nat
            @ ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 ) )
             != ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N5 ) ) ) )
          @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se6528837805403552850or_nat @ ( divide_divide_nat @ M5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% xor_nat_rec
thf(fact_5118_xor__one__eq,axiom,
    ! [A: code_natural] :
      ( ( bit_se2046307713759805098atural @ A @ one_one_Code_natural )
      = ( minus_7197305767214868737atural @ ( plus_p4538020629002901425atural @ A @ ( zero_n8403883297036319079atural @ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) ) )
        @ ( zero_n8403883297036319079atural
          @ ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% xor_one_eq
thf(fact_5119_xor__one__eq,axiom,
    ! [A: code_integer] :
      ( ( bit_se3222712562003087583nteger @ A @ one_one_Code_integer )
      = ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ ( zero_n356916108424825756nteger @ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) )
        @ ( zero_n356916108424825756nteger
          @ ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% xor_one_eq
thf(fact_5120_xor__one__eq,axiom,
    ! [A: int] :
      ( ( bit_se6526347334894502574or_int @ A @ one_one_int )
      = ( minus_minus_int @ ( plus_plus_int @ A @ ( zero_n2684676970156552555ol_int @ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) )
        @ ( zero_n2684676970156552555ol_int
          @ ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% xor_one_eq
thf(fact_5121_xor__one__eq,axiom,
    ! [A: nat] :
      ( ( bit_se6528837805403552850or_nat @ A @ one_one_nat )
      = ( minus_minus_nat @ ( plus_plus_nat @ A @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) )
        @ ( zero_n2687167440665602831ol_nat
          @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% xor_one_eq
thf(fact_5122_one__xor__eq,axiom,
    ! [A: code_natural] :
      ( ( bit_se2046307713759805098atural @ one_one_Code_natural @ A )
      = ( minus_7197305767214868737atural @ ( plus_p4538020629002901425atural @ A @ ( zero_n8403883297036319079atural @ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) ) )
        @ ( zero_n8403883297036319079atural
          @ ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% one_xor_eq
thf(fact_5123_one__xor__eq,axiom,
    ! [A: code_integer] :
      ( ( bit_se3222712562003087583nteger @ one_one_Code_integer @ A )
      = ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ ( zero_n356916108424825756nteger @ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) )
        @ ( zero_n356916108424825756nteger
          @ ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% one_xor_eq
thf(fact_5124_one__xor__eq,axiom,
    ! [A: int] :
      ( ( bit_se6526347334894502574or_int @ one_one_int @ A )
      = ( minus_minus_int @ ( plus_plus_int @ A @ ( zero_n2684676970156552555ol_int @ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) )
        @ ( zero_n2684676970156552555ol_int
          @ ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% one_xor_eq
thf(fact_5125_one__xor__eq,axiom,
    ! [A: nat] :
      ( ( bit_se6528837805403552850or_nat @ one_one_nat @ A )
      = ( minus_minus_nat @ ( plus_plus_nat @ A @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) )
        @ ( zero_n2687167440665602831ol_nat
          @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% one_xor_eq
thf(fact_5126_stable__imp__take__bit__eq,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ( divide6298287555418463151nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
        = A )
     => ( ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
         => ( ( bit_se1745604003318907178nteger @ N @ A )
            = zero_z3403309356797280102nteger ) )
        & ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
         => ( ( bit_se1745604003318907178nteger @ N @ A )
            = ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) @ one_one_Code_integer ) ) ) ) ) ).

% stable_imp_take_bit_eq
thf(fact_5127_stable__imp__take__bit__eq,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ( divide5121882707175180666atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
        = A )
     => ( ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
         => ( ( bit_se569199155075624693atural @ N @ A )
            = zero_z2226904508553997617atural ) )
        & ( ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
         => ( ( bit_se569199155075624693atural @ N @ A )
            = ( minus_7197305767214868737atural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) @ one_one_Code_natural ) ) ) ) ) ).

% stable_imp_take_bit_eq
thf(fact_5128_stable__imp__take__bit__eq,axiom,
    ! [A: nat,N: nat] :
      ( ( ( divide_divide_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = A )
     => ( ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
         => ( ( bit_se2925701944663578781it_nat @ N @ A )
            = zero_zero_nat ) )
        & ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
         => ( ( bit_se2925701944663578781it_nat @ N @ A )
            = ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ one_one_nat ) ) ) ) ) ).

% stable_imp_take_bit_eq
thf(fact_5129_stable__imp__take__bit__eq,axiom,
    ! [A: int,N: nat] :
      ( ( ( divide_divide_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
        = A )
     => ( ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
         => ( ( bit_se2923211474154528505it_int @ N @ A )
            = zero_zero_int ) )
        & ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
         => ( ( bit_se2923211474154528505it_int @ N @ A )
            = ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ one_one_int ) ) ) ) ) ).

% stable_imp_take_bit_eq
thf(fact_5130_divmod__step__nat__def,axiom,
    ( unique5026877609467782581ep_nat
    = ( ^ [L4: num] :
          ( produc2626176000494625587at_nat
          @ ^ [Q4: nat,R4: nat] : ( if_Pro6206227464963214023at_nat @ ( ord_less_eq_nat @ ( numeral_numeral_nat @ L4 ) @ R4 ) @ ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Q4 ) @ one_one_nat ) @ ( minus_minus_nat @ R4 @ ( numeral_numeral_nat @ L4 ) ) ) @ ( product_Pair_nat_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Q4 ) @ R4 ) ) ) ) ) ).

% divmod_step_nat_def
thf(fact_5131_divmod__step__int__def,axiom,
    ( unique5024387138958732305ep_int
    = ( ^ [L4: num] :
          ( produc4245557441103728435nt_int
          @ ^ [Q4: int,R4: int] : ( if_Pro3027730157355071871nt_int @ ( ord_less_eq_int @ ( numeral_numeral_int @ L4 ) @ R4 ) @ ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Q4 ) @ one_one_int ) @ ( minus_minus_int @ R4 @ ( numeral_numeral_int @ L4 ) ) ) @ ( product_Pair_int_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Q4 ) @ R4 ) ) ) ) ) ).

% divmod_step_int_def
thf(fact_5132_xor__Suc__0__eq,axiom,
    ! [N: nat] :
      ( ( bit_se6528837805403552850or_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( minus_minus_nat @ ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
        @ ( zero_n2687167440665602831ol_nat
          @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% xor_Suc_0_eq
thf(fact_5133_take__bit__numeral__minus__numeral__int,axiom,
    ! [M: num,N: num] :
      ( ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( case_option_int_num @ zero_zero_int
        @ ^ [Q4: num] : ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ M ) @ ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ M ) ) @ ( numeral_numeral_int @ Q4 ) ) )
        @ ( bit_take_bit_num @ ( numeral_numeral_nat @ M ) @ N ) ) ) ).

% take_bit_numeral_minus_numeral_int
thf(fact_5134_divmod__nat__if,axiom,
    ( divmod_nat
    = ( ^ [M5: nat,N5: nat] :
          ( if_Pro6206227464963214023at_nat
          @ ( ( N5 = zero_zero_nat )
            | ( ord_less_nat @ M5 @ N5 ) )
          @ ( product_Pair_nat_nat @ zero_zero_nat @ M5 )
          @ ( produc2626176000494625587at_nat
            @ ^ [Q4: nat] : ( product_Pair_nat_nat @ ( suc @ Q4 ) )
            @ ( divmod_nat @ ( minus_minus_nat @ M5 @ N5 ) @ N5 ) ) ) ) ) ).

% divmod_nat_if
thf(fact_5135_divmod__algorithm__code_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( unique5052692396658037445od_int @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( produc4245557441103728435nt_int
        @ ^ [Q4: int,R4: int] : ( product_Pair_int_int @ Q4 @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ R4 ) @ one_one_int ) )
        @ ( unique5052692396658037445od_int @ M @ N ) ) ) ).

% divmod_algorithm_code(6)
thf(fact_5136_divmod__algorithm__code_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( unique5055182867167087721od_nat @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( produc2626176000494625587at_nat
        @ ^ [Q4: nat,R4: nat] : ( product_Pair_nat_nat @ Q4 @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ R4 ) @ one_one_nat ) )
        @ ( unique5055182867167087721od_nat @ M @ N ) ) ) ).

% divmod_algorithm_code(6)
thf(fact_5137_divmod__algorithm__code_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( unique3479559517661332726nteger @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( produc6916734918728496179nteger
        @ ^ [Q4: code_integer,R4: code_integer] : ( produc1086072967326762835nteger @ Q4 @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ R4 ) @ one_one_Code_integer ) )
        @ ( unique3479559517661332726nteger @ M @ N ) ) ) ).

% divmod_algorithm_code(6)
thf(fact_5138_divmod__BitM__2__eq,axiom,
    ! [M: num] :
      ( ( unique5052692396658037445od_int @ ( bitM @ M ) @ ( bit0 @ one ) )
      = ( product_Pair_int_int @ ( minus_minus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ one_one_int ) ) ).

% divmod_BitM_2_eq
thf(fact_5139_divmod__algorithm__code_I7_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_num @ M @ N )
       => ( ( unique3479559517661332726nteger @ ( bit0 @ M ) @ ( bit1 @ N ) )
          = ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ ( numera6620942414471956472nteger @ ( bit0 @ M ) ) ) ) )
      & ( ~ ( ord_less_eq_num @ M @ N )
       => ( ( unique3479559517661332726nteger @ ( bit0 @ M ) @ ( bit1 @ N ) )
          = ( unique4921790084139445826nteger @ ( bit1 @ N ) @ ( unique3479559517661332726nteger @ ( bit0 @ M ) @ ( bit0 @ ( bit1 @ N ) ) ) ) ) ) ) ).

% divmod_algorithm_code(7)
thf(fact_5140_divmod__algorithm__code_I7_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_num @ M @ N )
       => ( ( unique5055182867167087721od_nat @ ( bit0 @ M ) @ ( bit1 @ N ) )
          = ( product_Pair_nat_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ M ) ) ) ) )
      & ( ~ ( ord_less_eq_num @ M @ N )
       => ( ( unique5055182867167087721od_nat @ ( bit0 @ M ) @ ( bit1 @ N ) )
          = ( unique5026877609467782581ep_nat @ ( bit1 @ N ) @ ( unique5055182867167087721od_nat @ ( bit0 @ M ) @ ( bit0 @ ( bit1 @ N ) ) ) ) ) ) ) ).

% divmod_algorithm_code(7)
thf(fact_5141_divmod__algorithm__code_I7_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_num @ M @ N )
       => ( ( unique5052692396658037445od_int @ ( bit0 @ M ) @ ( bit1 @ N ) )
          = ( product_Pair_int_int @ zero_zero_int @ ( numeral_numeral_int @ ( bit0 @ M ) ) ) ) )
      & ( ~ ( ord_less_eq_num @ M @ N )
       => ( ( unique5052692396658037445od_int @ ( bit0 @ M ) @ ( bit1 @ N ) )
          = ( unique5024387138958732305ep_int @ ( bit1 @ N ) @ ( unique5052692396658037445od_int @ ( bit0 @ M ) @ ( bit0 @ ( bit1 @ N ) ) ) ) ) ) ) ).

% divmod_algorithm_code(7)
thf(fact_5142_divmod__algorithm__code_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_num @ M @ N )
       => ( ( unique3479559517661332726nteger @ ( bit1 @ M ) @ ( bit1 @ N ) )
          = ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ ( numera6620942414471956472nteger @ ( bit1 @ M ) ) ) ) )
      & ( ~ ( ord_less_num @ M @ N )
       => ( ( unique3479559517661332726nteger @ ( bit1 @ M ) @ ( bit1 @ N ) )
          = ( unique4921790084139445826nteger @ ( bit1 @ N ) @ ( unique3479559517661332726nteger @ ( bit1 @ M ) @ ( bit0 @ ( bit1 @ N ) ) ) ) ) ) ) ).

% divmod_algorithm_code(8)
thf(fact_5143_divmod__algorithm__code_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_num @ M @ N )
       => ( ( unique5055182867167087721od_nat @ ( bit1 @ M ) @ ( bit1 @ N ) )
          = ( product_Pair_nat_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit1 @ M ) ) ) ) )
      & ( ~ ( ord_less_num @ M @ N )
       => ( ( unique5055182867167087721od_nat @ ( bit1 @ M ) @ ( bit1 @ N ) )
          = ( unique5026877609467782581ep_nat @ ( bit1 @ N ) @ ( unique5055182867167087721od_nat @ ( bit1 @ M ) @ ( bit0 @ ( bit1 @ N ) ) ) ) ) ) ) ).

% divmod_algorithm_code(8)
thf(fact_5144_divmod__algorithm__code_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_num @ M @ N )
       => ( ( unique5052692396658037445od_int @ ( bit1 @ M ) @ ( bit1 @ N ) )
          = ( product_Pair_int_int @ zero_zero_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) ) ) )
      & ( ~ ( ord_less_num @ M @ N )
       => ( ( unique5052692396658037445od_int @ ( bit1 @ M ) @ ( bit1 @ N ) )
          = ( unique5024387138958732305ep_int @ ( bit1 @ N ) @ ( unique5052692396658037445od_int @ ( bit1 @ M ) @ ( bit0 @ ( bit1 @ N ) ) ) ) ) ) ) ).

% divmod_algorithm_code(8)
thf(fact_5145_odd__mod__4__div__2,axiom,
    ! [N: nat] :
      ( ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
        = ( numeral_numeral_nat @ ( bit1 @ one ) ) )
     => ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% odd_mod_4_div_2
thf(fact_5146_verit__eq__simplify_I9_J,axiom,
    ! [X32: num,Y32: num] :
      ( ( ( bit1 @ X32 )
        = ( bit1 @ Y32 ) )
      = ( X32 = Y32 ) ) ).

% verit_eq_simplify(9)
thf(fact_5147_case__prodI2,axiom,
    ! [P4: produc8763457246119570046nteger,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o] :
      ( ! [A2: code_integer > option6357759511663192854e_term,B2: produc8923325533196201883nteger] :
          ( ( P4
            = ( produc6137756002093451184nteger @ A2 @ B2 ) )
         => ( C @ A2 @ B2 ) )
     => ( produc127349428274296955eger_o @ C @ P4 ) ) ).

% case_prodI2
thf(fact_5148_case__prodI2,axiom,
    ! [P4: produc989692990947075319atural,C: ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > $o] :
      ( ! [A2: produc4972180933644002618e_term > option6357759511663192854e_term,B2: produc7822875418678951345atural] :
          ( ( P4
            = ( produc3831813291587773865atural @ A2 @ B2 ) )
         => ( C @ A2 @ B2 ) )
     => ( produc2278936416606902338ural_o @ C @ P4 ) ) ).

% case_prodI2
thf(fact_5149_case__prodI2,axiom,
    ! [P4: produc1908205239877642774nteger,C: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o] :
      ( ! [A2: produc6241069584506657477e_term > option6357759511663192854e_term,B2: produc8923325533196201883nteger] :
          ( ( P4
            = ( produc8603105652947943368nteger @ A2 @ B2 ) )
         => ( C @ A2 @ B2 ) )
     => ( produc6253627499356882019eger_o @ C @ P4 ) ) ).

% case_prodI2
thf(fact_5150_case__prodI2,axiom,
    ! [P4: produc2285326912895808259nt_int,C: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > $o] :
      ( ! [A2: produc8551481072490612790e_term > option6357759511663192854e_term,B2: product_prod_int_int] :
          ( ( P4
            = ( produc5700946648718959541nt_int @ A2 @ B2 ) )
         => ( C @ A2 @ B2 ) )
     => ( produc1573362020775583542_int_o @ C @ P4 ) ) ).

% case_prodI2
thf(fact_5151_case__prodI2,axiom,
    ! [P4: produc7773217078559923341nt_int,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > $o] :
      ( ! [A2: int > option6357759511663192854e_term,B2: product_prod_int_int] :
          ( ( P4
            = ( produc4305682042979456191nt_int @ A2 @ B2 ) )
         => ( C @ A2 @ B2 ) )
     => ( produc2558449545302689196_int_o @ C @ P4 ) ) ).

% case_prodI2
thf(fact_5152_case__prodI2,axiom,
    ! [P4: product_prod_int_int,C: int > int > $o] :
      ( ! [A2: int,B2: int] :
          ( ( P4
            = ( product_Pair_int_int @ A2 @ B2 ) )
         => ( C @ A2 @ B2 ) )
     => ( produc4947309494688390418_int_o @ C @ P4 ) ) ).

% case_prodI2
thf(fact_5153_case__prodI,axiom,
    ! [F: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o,A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( F @ A @ B )
     => ( produc127349428274296955eger_o @ F @ ( produc6137756002093451184nteger @ A @ B ) ) ) ).

% case_prodI
thf(fact_5154_case__prodI,axiom,
    ! [F: ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > $o,A: produc4972180933644002618e_term > option6357759511663192854e_term,B: produc7822875418678951345atural] :
      ( ( F @ A @ B )
     => ( produc2278936416606902338ural_o @ F @ ( produc3831813291587773865atural @ A @ B ) ) ) ).

% case_prodI
thf(fact_5155_case__prodI,axiom,
    ! [F: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o,A: produc6241069584506657477e_term > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( F @ A @ B )
     => ( produc6253627499356882019eger_o @ F @ ( produc8603105652947943368nteger @ A @ B ) ) ) ).

% case_prodI
thf(fact_5156_case__prodI,axiom,
    ! [F: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > $o,A: produc8551481072490612790e_term > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( F @ A @ B )
     => ( produc1573362020775583542_int_o @ F @ ( produc5700946648718959541nt_int @ A @ B ) ) ) ).

% case_prodI
thf(fact_5157_case__prodI,axiom,
    ! [F: ( int > option6357759511663192854e_term ) > product_prod_int_int > $o,A: int > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( F @ A @ B )
     => ( produc2558449545302689196_int_o @ F @ ( produc4305682042979456191nt_int @ A @ B ) ) ) ).

% case_prodI
thf(fact_5158_case__prodI,axiom,
    ! [F: int > int > $o,A: int,B: int] :
      ( ( F @ A @ B )
     => ( produc4947309494688390418_int_o @ F @ ( product_Pair_int_int @ A @ B ) ) ) ).

% case_prodI
thf(fact_5159_mem__case__prodI2,axiom,
    ! [P4: produc8763457246119570046nteger,Z: nat,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_nat] :
      ( ! [A2: code_integer > option6357759511663192854e_term,B2: produc8923325533196201883nteger] :
          ( ( P4
            = ( produc6137756002093451184nteger @ A2 @ B2 ) )
         => ( member_nat @ Z @ ( C @ A2 @ B2 ) ) )
     => ( member_nat @ Z @ ( produc3558942015123893603et_nat @ C @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_5160_mem__case__prodI2,axiom,
    ! [P4: produc8763457246119570046nteger,Z: int,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_int] :
      ( ! [A2: code_integer > option6357759511663192854e_term,B2: produc8923325533196201883nteger] :
          ( ( P4
            = ( produc6137756002093451184nteger @ A2 @ B2 ) )
         => ( member_int @ Z @ ( C @ A2 @ B2 ) ) )
     => ( member_int @ Z @ ( produc8604463032469472703et_int @ C @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_5161_mem__case__prodI2,axiom,
    ! [P4: produc7773217078559923341nt_int,Z: nat,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_nat] :
      ( ! [A2: int > option6357759511663192854e_term,B2: product_prod_int_int] :
          ( ( P4
            = ( produc4305682042979456191nt_int @ A2 @ B2 ) )
         => ( member_nat @ Z @ ( C @ A2 @ B2 ) ) )
     => ( member_nat @ Z @ ( produc8289552606927098482et_nat @ C @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_5162_mem__case__prodI2,axiom,
    ! [P4: produc7773217078559923341nt_int,Z: int,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_int] :
      ( ! [A2: int > option6357759511663192854e_term,B2: product_prod_int_int] :
          ( ( P4
            = ( produc4305682042979456191nt_int @ A2 @ B2 ) )
         => ( member_int @ Z @ ( C @ A2 @ B2 ) ) )
     => ( member_int @ Z @ ( produc4111701587417901774et_int @ C @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_5163_mem__case__prodI2,axiom,
    ! [P4: produc8763457246119570046nteger,Z: set_nat,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_set_nat] :
      ( ! [A2: code_integer > option6357759511663192854e_term,B2: produc8923325533196201883nteger] :
          ( ( P4
            = ( produc6137756002093451184nteger @ A2 @ B2 ) )
         => ( member_set_nat @ Z @ ( C @ A2 @ B2 ) ) )
     => ( member_set_nat @ Z @ ( produc4656581727815777817et_nat @ C @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_5164_mem__case__prodI2,axiom,
    ! [P4: produc7773217078559923341nt_int,Z: set_nat,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_set_nat] :
      ( ! [A2: int > option6357759511663192854e_term,B2: product_prod_int_int] :
          ( ( P4
            = ( produc4305682042979456191nt_int @ A2 @ B2 ) )
         => ( member_set_nat @ Z @ ( C @ A2 @ B2 ) ) )
     => ( member_set_nat @ Z @ ( produc3577156405726439208et_nat @ C @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_5165_mem__case__prodI2,axiom,
    ! [P4: produc8763457246119570046nteger,Z: set_Pr1261947904930325089at_nat,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_se7855581050983116737at_nat] :
      ( ! [A2: code_integer > option6357759511663192854e_term,B2: produc8923325533196201883nteger] :
          ( ( P4
            = ( produc6137756002093451184nteger @ A2 @ B2 ) )
         => ( member2643936169264416010at_nat @ Z @ ( C @ A2 @ B2 ) ) )
     => ( member2643936169264416010at_nat @ Z @ ( produc1954297445647699364at_nat @ C @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_5166_mem__case__prodI2,axiom,
    ! [P4: produc8763457246119570046nteger,Z: set_Pr958786334691620121nt_int,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_se6260736226359567993nt_int] :
      ( ! [A2: code_integer > option6357759511663192854e_term,B2: produc8923325533196201883nteger] :
          ( ( P4
            = ( produc6137756002093451184nteger @ A2 @ B2 ) )
         => ( member2340774599025711042nt_int @ Z @ ( C @ A2 @ B2 ) ) )
     => ( member2340774599025711042nt_int @ Z @ ( produc359452621024150620nt_int @ C @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_5167_mem__case__prodI2,axiom,
    ! [P4: produc7773217078559923341nt_int,Z: set_Pr1261947904930325089at_nat,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_se7855581050983116737at_nat] :
      ( ! [A2: int > option6357759511663192854e_term,B2: product_prod_int_int] :
          ( ( P4
            = ( produc4305682042979456191nt_int @ A2 @ B2 ) )
         => ( member2643936169264416010at_nat @ Z @ ( C @ A2 @ B2 ) ) )
     => ( member2643936169264416010at_nat @ Z @ ( produc2170347500241090005at_nat @ C @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_5168_mem__case__prodI2,axiom,
    ! [P4: produc7773217078559923341nt_int,Z: set_Pr958786334691620121nt_int,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_se6260736226359567993nt_int] :
      ( ! [A2: int > option6357759511663192854e_term,B2: product_prod_int_int] :
          ( ( P4
            = ( produc4305682042979456191nt_int @ A2 @ B2 ) )
         => ( member2340774599025711042nt_int @ Z @ ( C @ A2 @ B2 ) ) )
     => ( member2340774599025711042nt_int @ Z @ ( produc575502675617541261nt_int @ C @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_5169_mem__case__prodI,axiom,
    ! [Z: nat,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_nat,A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( member_nat @ Z @ ( C @ A @ B ) )
     => ( member_nat @ Z @ ( produc3558942015123893603et_nat @ C @ ( produc6137756002093451184nteger @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_5170_mem__case__prodI,axiom,
    ! [Z: int,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_int,A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( member_int @ Z @ ( C @ A @ B ) )
     => ( member_int @ Z @ ( produc8604463032469472703et_int @ C @ ( produc6137756002093451184nteger @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_5171_mem__case__prodI,axiom,
    ! [Z: nat,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_nat,A: int > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( member_nat @ Z @ ( C @ A @ B ) )
     => ( member_nat @ Z @ ( produc8289552606927098482et_nat @ C @ ( produc4305682042979456191nt_int @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_5172_mem__case__prodI,axiom,
    ! [Z: int,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_int,A: int > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( member_int @ Z @ ( C @ A @ B ) )
     => ( member_int @ Z @ ( produc4111701587417901774et_int @ C @ ( produc4305682042979456191nt_int @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_5173_mem__case__prodI,axiom,
    ! [Z: set_nat,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_set_nat,A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( member_set_nat @ Z @ ( C @ A @ B ) )
     => ( member_set_nat @ Z @ ( produc4656581727815777817et_nat @ C @ ( produc6137756002093451184nteger @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_5174_mem__case__prodI,axiom,
    ! [Z: set_nat,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_set_nat,A: int > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( member_set_nat @ Z @ ( C @ A @ B ) )
     => ( member_set_nat @ Z @ ( produc3577156405726439208et_nat @ C @ ( produc4305682042979456191nt_int @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_5175_mem__case__prodI,axiom,
    ! [Z: set_Pr1261947904930325089at_nat,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_se7855581050983116737at_nat,A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( member2643936169264416010at_nat @ Z @ ( C @ A @ B ) )
     => ( member2643936169264416010at_nat @ Z @ ( produc1954297445647699364at_nat @ C @ ( produc6137756002093451184nteger @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_5176_mem__case__prodI,axiom,
    ! [Z: set_Pr958786334691620121nt_int,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_se6260736226359567993nt_int,A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( member2340774599025711042nt_int @ Z @ ( C @ A @ B ) )
     => ( member2340774599025711042nt_int @ Z @ ( produc359452621024150620nt_int @ C @ ( produc6137756002093451184nteger @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_5177_mem__case__prodI,axiom,
    ! [Z: set_Pr1261947904930325089at_nat,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_se7855581050983116737at_nat,A: int > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( member2643936169264416010at_nat @ Z @ ( C @ A @ B ) )
     => ( member2643936169264416010at_nat @ Z @ ( produc2170347500241090005at_nat @ C @ ( produc4305682042979456191nt_int @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_5178_mem__case__prodI,axiom,
    ! [Z: set_Pr958786334691620121nt_int,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_se6260736226359567993nt_int,A: int > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( member2340774599025711042nt_int @ Z @ ( C @ A @ B ) )
     => ( member2340774599025711042nt_int @ Z @ ( produc575502675617541261nt_int @ C @ ( produc4305682042979456191nt_int @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_5179_case__prodI2_H,axiom,
    ! [P4: product_prod_nat_nat,C: nat > nat > product_prod_nat_nat > $o,X: product_prod_nat_nat] :
      ( ! [A2: nat,B2: nat] :
          ( ( ( product_Pair_nat_nat @ A2 @ B2 )
            = P4 )
         => ( C @ A2 @ B2 @ X ) )
     => ( produc8739625826339149834_nat_o @ C @ P4 @ X ) ) ).

% case_prodI2'
thf(fact_5180_take__bit__num__simps_I1_J,axiom,
    ! [M: num] :
      ( ( bit_take_bit_num @ zero_zero_nat @ M )
      = none_num ) ).

% take_bit_num_simps(1)
thf(fact_5181_take__bit__num__simps_I3_J,axiom,
    ! [N: nat,M: num] :
      ( ( bit_take_bit_num @ ( suc @ N ) @ ( bit0 @ M ) )
      = ( case_o6005452278849405969um_num @ none_num
        @ ^ [Q4: num] : ( some_num @ ( bit0 @ Q4 ) )
        @ ( bit_take_bit_num @ N @ M ) ) ) ).

% take_bit_num_simps(3)
thf(fact_5182_take__bit__num__simps_I4_J,axiom,
    ! [N: nat,M: num] :
      ( ( bit_take_bit_num @ ( suc @ N ) @ ( bit1 @ M ) )
      = ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_take_bit_num @ N @ M ) ) ) ) ).

% take_bit_num_simps(4)
thf(fact_5183_xor__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se2046307713759805098atural @ ( numera5444537566228673987atural @ ( bit1 @ X ) ) @ one_one_Code_natural )
      = ( numera5444537566228673987atural @ ( bit0 @ X ) ) ) ).

% xor_numerals(8)
thf(fact_5184_xor__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se6526347334894502574or_int @ ( numeral_numeral_int @ ( bit1 @ X ) ) @ one_one_int )
      = ( numeral_numeral_int @ ( bit0 @ X ) ) ) ).

% xor_numerals(8)
thf(fact_5185_xor__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se3222712562003087583nteger @ ( numera6620942414471956472nteger @ ( bit1 @ X ) ) @ one_one_Code_integer )
      = ( numera6620942414471956472nteger @ ( bit0 @ X ) ) ) ).

% xor_numerals(8)
thf(fact_5186_xor__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ one_one_nat )
      = ( numeral_numeral_nat @ ( bit0 @ X ) ) ) ).

% xor_numerals(8)
thf(fact_5187_xor__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se2046307713759805098atural @ ( numera5444537566228673987atural @ ( bit0 @ X ) ) @ one_one_Code_natural )
      = ( numera5444537566228673987atural @ ( bit1 @ X ) ) ) ).

% xor_numerals(5)
thf(fact_5188_xor__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se6526347334894502574or_int @ ( numeral_numeral_int @ ( bit0 @ X ) ) @ one_one_int )
      = ( numeral_numeral_int @ ( bit1 @ X ) ) ) ).

% xor_numerals(5)
thf(fact_5189_xor__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se3222712562003087583nteger @ ( numera6620942414471956472nteger @ ( bit0 @ X ) ) @ one_one_Code_integer )
      = ( numera6620942414471956472nteger @ ( bit1 @ X ) ) ) ).

% xor_numerals(5)
thf(fact_5190_xor__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ one_one_nat )
      = ( numeral_numeral_nat @ ( bit1 @ X ) ) ) ).

% xor_numerals(5)
thf(fact_5191_xor__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se2046307713759805098atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ ( bit1 @ Y3 ) ) )
      = ( numera5444537566228673987atural @ ( bit0 @ Y3 ) ) ) ).

% xor_numerals(2)
thf(fact_5192_xor__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se6526347334894502574or_int @ one_one_int @ ( numeral_numeral_int @ ( bit1 @ Y3 ) ) )
      = ( numeral_numeral_int @ ( bit0 @ Y3 ) ) ) ).

% xor_numerals(2)
thf(fact_5193_xor__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se3222712562003087583nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ ( bit1 @ Y3 ) ) )
      = ( numera6620942414471956472nteger @ ( bit0 @ Y3 ) ) ) ).

% xor_numerals(2)
thf(fact_5194_xor__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se6528837805403552850or_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) )
      = ( numeral_numeral_nat @ ( bit0 @ Y3 ) ) ) ).

% xor_numerals(2)
thf(fact_5195_xor__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se2046307713759805098atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ Y3 ) ) )
      = ( numera5444537566228673987atural @ ( bit1 @ Y3 ) ) ) ).

% xor_numerals(1)
thf(fact_5196_xor__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se6526347334894502574or_int @ one_one_int @ ( numeral_numeral_int @ ( bit0 @ Y3 ) ) )
      = ( numeral_numeral_int @ ( bit1 @ Y3 ) ) ) ).

% xor_numerals(1)
thf(fact_5197_xor__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se3222712562003087583nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ Y3 ) ) )
      = ( numera6620942414471956472nteger @ ( bit1 @ Y3 ) ) ) ).

% xor_numerals(1)
thf(fact_5198_xor__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se6528837805403552850or_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit0 @ Y3 ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) ) ).

% xor_numerals(1)
thf(fact_5199_dbl__inc__simps_I3_J,axiom,
    ( ( neg_nu5851722552734809277nc_int @ one_one_int )
    = ( numeral_numeral_int @ ( bit1 @ one ) ) ) ).

% dbl_inc_simps(3)
thf(fact_5200_dbl__inc__simps_I3_J,axiom,
    ( ( neg_nu5831290666863070958nteger @ one_one_Code_integer )
    = ( numera6620942414471956472nteger @ ( bit1 @ one ) ) ) ).

% dbl_inc_simps(3)
thf(fact_5201_dbl__inc__simps_I3_J,axiom,
    ( ( neg_nu5219082963157363817nc_rat @ one_one_rat )
    = ( numeral_numeral_rat @ ( bit1 @ one ) ) ) ).

% dbl_inc_simps(3)
thf(fact_5202_divmod__algorithm__code_I4_J,axiom,
    ! [N: num] :
      ( ( unique5052692396658037445od_int @ one @ ( bit1 @ N ) )
      = ( product_Pair_int_int @ zero_zero_int @ ( numeral_numeral_int @ one ) ) ) ).

% divmod_algorithm_code(4)
thf(fact_5203_divmod__algorithm__code_I4_J,axiom,
    ! [N: num] :
      ( ( unique5055182867167087721od_nat @ one @ ( bit1 @ N ) )
      = ( product_Pair_nat_nat @ zero_zero_nat @ ( numeral_numeral_nat @ one ) ) ) ).

% divmod_algorithm_code(4)
thf(fact_5204_divmod__algorithm__code_I4_J,axiom,
    ! [N: num] :
      ( ( unique3479559517661332726nteger @ one @ ( bit1 @ N ) )
      = ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ ( numera6620942414471956472nteger @ one ) ) ) ).

% divmod_algorithm_code(4)
thf(fact_5205_Suc__mod__eq__add3__mod__numeral,axiom,
    ! [M: nat,V: num] :
      ( ( modulo_modulo_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ ( numeral_numeral_nat @ V ) )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ ( numeral_numeral_nat @ V ) ) ) ).

% Suc_mod_eq_add3_mod_numeral
thf(fact_5206_mod__Suc__eq__mod__add3,axiom,
    ! [M: nat,N: nat] :
      ( ( modulo_modulo_nat @ M @ ( suc @ ( suc @ ( suc @ N ) ) ) )
      = ( modulo_modulo_nat @ M @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ N ) ) ) ).

% mod_Suc_eq_mod_add3
thf(fact_5207_Suc__div__eq__add3__div__numeral,axiom,
    ! [M: nat,V: num] :
      ( ( divide_divide_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ ( numeral_numeral_nat @ V ) )
      = ( divide_divide_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ ( numeral_numeral_nat @ V ) ) ) ).

% Suc_div_eq_add3_div_numeral
thf(fact_5208_div__Suc__eq__div__add3,axiom,
    ! [M: nat,N: nat] :
      ( ( divide_divide_nat @ M @ ( suc @ ( suc @ ( suc @ N ) ) ) )
      = ( divide_divide_nat @ M @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ N ) ) ) ).

% div_Suc_eq_div_add3
thf(fact_5209_xor__nat__numerals_I4_J,axiom,
    ! [X: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit0 @ X ) ) ) ).

% xor_nat_numerals(4)
thf(fact_5210_xor__nat__numerals_I3_J,axiom,
    ! [X: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit1 @ X ) ) ) ).

% xor_nat_numerals(3)
thf(fact_5211_xor__nat__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se6528837805403552850or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) )
      = ( numeral_numeral_nat @ ( bit0 @ Y3 ) ) ) ).

% xor_nat_numerals(2)
thf(fact_5212_xor__nat__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se6528837805403552850or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit0 @ Y3 ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) ) ).

% xor_nat_numerals(1)
thf(fact_5213_dbl__dec__simps_I4_J,axiom,
    ( ( neg_nu3811975205180677377ec_int @ ( uminus_uminus_int @ one_one_int ) )
    = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ one ) ) ) ) ).

% dbl_dec_simps(4)
thf(fact_5214_dbl__dec__simps_I4_J,axiom,
    ( ( neg_nu7757733837767384882nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( bit1 @ one ) ) ) ) ).

% dbl_dec_simps(4)
thf(fact_5215_dbl__dec__simps_I4_J,axiom,
    ( ( neg_nu3179335615603231917ec_rat @ ( uminus_uminus_rat @ one_one_rat ) )
    = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( bit1 @ one ) ) ) ) ).

% dbl_dec_simps(4)
thf(fact_5216_take__bit__numeral__numeral,axiom,
    ! [M: num,N: num] :
      ( ( bit_se569199155075624693atural @ ( numeral_numeral_nat @ M ) @ ( numera5444537566228673987atural @ N ) )
      = ( case_o5621594795226839503al_num @ zero_z2226904508553997617atural @ numera5444537566228673987atural @ ( bit_take_bit_num @ ( numeral_numeral_nat @ M ) @ N ) ) ) ).

% take_bit_numeral_numeral
thf(fact_5217_take__bit__numeral__numeral,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1745604003318907178nteger @ ( numeral_numeral_nat @ M ) @ ( numera6620942414471956472nteger @ N ) )
      = ( case_o356765784539232260er_num @ zero_z3403309356797280102nteger @ numera6620942414471956472nteger @ ( bit_take_bit_num @ ( numeral_numeral_nat @ M ) @ N ) ) ) ).

% take_bit_numeral_numeral
thf(fact_5218_take__bit__numeral__numeral,axiom,
    ! [M: num,N: num] :
      ( ( bit_se2925701944663578781it_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( case_option_nat_num @ zero_zero_nat @ numeral_numeral_nat @ ( bit_take_bit_num @ ( numeral_numeral_nat @ M ) @ N ) ) ) ).

% take_bit_numeral_numeral
thf(fact_5219_take__bit__numeral__numeral,axiom,
    ! [M: num,N: num] :
      ( ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_int @ N ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_take_bit_num @ ( numeral_numeral_nat @ M ) @ N ) ) ) ).

% take_bit_numeral_numeral
thf(fact_5220_xor__numerals_I4_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se2046307713759805098atural @ ( numera5444537566228673987atural @ ( bit0 @ X ) ) @ ( numera5444537566228673987atural @ ( bit1 @ Y3 ) ) )
      = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se2046307713759805098atural @ ( numera5444537566228673987atural @ X ) @ ( numera5444537566228673987atural @ Y3 ) ) ) ) ) ).

% xor_numerals(4)
thf(fact_5221_xor__numerals_I4_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se6526347334894502574or_int @ ( numeral_numeral_int @ ( bit0 @ X ) ) @ ( numeral_numeral_int @ ( bit1 @ Y3 ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se6526347334894502574or_int @ ( numeral_numeral_int @ X ) @ ( numeral_numeral_int @ Y3 ) ) ) ) ) ).

% xor_numerals(4)
thf(fact_5222_xor__numerals_I4_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se3222712562003087583nteger @ ( numera6620942414471956472nteger @ ( bit0 @ X ) ) @ ( numera6620942414471956472nteger @ ( bit1 @ Y3 ) ) )
      = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se3222712562003087583nteger @ ( numera6620942414471956472nteger @ X ) @ ( numera6620942414471956472nteger @ Y3 ) ) ) ) ) ).

% xor_numerals(4)
thf(fact_5223_xor__numerals_I4_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) )
      = ( plus_plus_nat @ one_one_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ X ) @ ( numeral_numeral_nat @ Y3 ) ) ) ) ) ).

% xor_numerals(4)
thf(fact_5224_xor__numerals_I6_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se2046307713759805098atural @ ( numera5444537566228673987atural @ ( bit1 @ X ) ) @ ( numera5444537566228673987atural @ ( bit0 @ Y3 ) ) )
      = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se2046307713759805098atural @ ( numera5444537566228673987atural @ X ) @ ( numera5444537566228673987atural @ Y3 ) ) ) ) ) ).

% xor_numerals(6)
thf(fact_5225_xor__numerals_I6_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se6526347334894502574or_int @ ( numeral_numeral_int @ ( bit1 @ X ) ) @ ( numeral_numeral_int @ ( bit0 @ Y3 ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se6526347334894502574or_int @ ( numeral_numeral_int @ X ) @ ( numeral_numeral_int @ Y3 ) ) ) ) ) ).

% xor_numerals(6)
thf(fact_5226_xor__numerals_I6_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se3222712562003087583nteger @ ( numera6620942414471956472nteger @ ( bit1 @ X ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ Y3 ) ) )
      = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se3222712562003087583nteger @ ( numera6620942414471956472nteger @ X ) @ ( numera6620942414471956472nteger @ Y3 ) ) ) ) ) ).

% xor_numerals(6)
thf(fact_5227_xor__numerals_I6_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ ( numeral_numeral_nat @ ( bit0 @ Y3 ) ) )
      = ( plus_plus_nat @ one_one_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ X ) @ ( numeral_numeral_nat @ Y3 ) ) ) ) ) ).

% xor_numerals(6)
thf(fact_5228_divmod__integer_H__def,axiom,
    ( unique3479559517661332726nteger
    = ( ^ [M5: num,N5: num] : ( produc1086072967326762835nteger @ ( divide6298287555418463151nteger @ ( numera6620942414471956472nteger @ M5 ) @ ( numera6620942414471956472nteger @ N5 ) ) @ ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ M5 ) @ ( numera6620942414471956472nteger @ N5 ) ) ) ) ) ).

% divmod_integer'_def
thf(fact_5229_verit__eq__simplify_I14_J,axiom,
    ! [X2: num,X32: num] :
      ( ( bit0 @ X2 )
     != ( bit1 @ X32 ) ) ).

% verit_eq_simplify(14)
thf(fact_5230_verit__eq__simplify_I12_J,axiom,
    ! [X32: num] :
      ( one
     != ( bit1 @ X32 ) ) ).

% verit_eq_simplify(12)
thf(fact_5231_mem__case__prodE,axiom,
    ! [Z: nat,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_nat,P4: produc8763457246119570046nteger] :
      ( ( member_nat @ Z @ ( produc3558942015123893603et_nat @ C @ P4 ) )
     => ~ ! [X5: code_integer > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc6137756002093451184nteger @ X5 @ Y4 ) )
           => ~ ( member_nat @ Z @ ( C @ X5 @ Y4 ) ) ) ) ).

% mem_case_prodE
thf(fact_5232_mem__case__prodE,axiom,
    ! [Z: int,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_int,P4: produc8763457246119570046nteger] :
      ( ( member_int @ Z @ ( produc8604463032469472703et_int @ C @ P4 ) )
     => ~ ! [X5: code_integer > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc6137756002093451184nteger @ X5 @ Y4 ) )
           => ~ ( member_int @ Z @ ( C @ X5 @ Y4 ) ) ) ) ).

% mem_case_prodE
thf(fact_5233_mem__case__prodE,axiom,
    ! [Z: nat,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_nat,P4: produc7773217078559923341nt_int] :
      ( ( member_nat @ Z @ ( produc8289552606927098482et_nat @ C @ P4 ) )
     => ~ ! [X5: int > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc4305682042979456191nt_int @ X5 @ Y4 ) )
           => ~ ( member_nat @ Z @ ( C @ X5 @ Y4 ) ) ) ) ).

% mem_case_prodE
thf(fact_5234_mem__case__prodE,axiom,
    ! [Z: int,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_int,P4: produc7773217078559923341nt_int] :
      ( ( member_int @ Z @ ( produc4111701587417901774et_int @ C @ P4 ) )
     => ~ ! [X5: int > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc4305682042979456191nt_int @ X5 @ Y4 ) )
           => ~ ( member_int @ Z @ ( C @ X5 @ Y4 ) ) ) ) ).

% mem_case_prodE
thf(fact_5235_mem__case__prodE,axiom,
    ! [Z: set_nat,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_set_nat,P4: produc8763457246119570046nteger] :
      ( ( member_set_nat @ Z @ ( produc4656581727815777817et_nat @ C @ P4 ) )
     => ~ ! [X5: code_integer > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc6137756002093451184nteger @ X5 @ Y4 ) )
           => ~ ( member_set_nat @ Z @ ( C @ X5 @ Y4 ) ) ) ) ).

% mem_case_prodE
thf(fact_5236_mem__case__prodE,axiom,
    ! [Z: set_nat,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_set_nat,P4: produc7773217078559923341nt_int] :
      ( ( member_set_nat @ Z @ ( produc3577156405726439208et_nat @ C @ P4 ) )
     => ~ ! [X5: int > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc4305682042979456191nt_int @ X5 @ Y4 ) )
           => ~ ( member_set_nat @ Z @ ( C @ X5 @ Y4 ) ) ) ) ).

% mem_case_prodE
thf(fact_5237_mem__case__prodE,axiom,
    ! [Z: set_Pr1261947904930325089at_nat,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_se7855581050983116737at_nat,P4: produc8763457246119570046nteger] :
      ( ( member2643936169264416010at_nat @ Z @ ( produc1954297445647699364at_nat @ C @ P4 ) )
     => ~ ! [X5: code_integer > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc6137756002093451184nteger @ X5 @ Y4 ) )
           => ~ ( member2643936169264416010at_nat @ Z @ ( C @ X5 @ Y4 ) ) ) ) ).

% mem_case_prodE
thf(fact_5238_mem__case__prodE,axiom,
    ! [Z: set_Pr958786334691620121nt_int,C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > set_se6260736226359567993nt_int,P4: produc8763457246119570046nteger] :
      ( ( member2340774599025711042nt_int @ Z @ ( produc359452621024150620nt_int @ C @ P4 ) )
     => ~ ! [X5: code_integer > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc6137756002093451184nteger @ X5 @ Y4 ) )
           => ~ ( member2340774599025711042nt_int @ Z @ ( C @ X5 @ Y4 ) ) ) ) ).

% mem_case_prodE
thf(fact_5239_mem__case__prodE,axiom,
    ! [Z: set_Pr1261947904930325089at_nat,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_se7855581050983116737at_nat,P4: produc7773217078559923341nt_int] :
      ( ( member2643936169264416010at_nat @ Z @ ( produc2170347500241090005at_nat @ C @ P4 ) )
     => ~ ! [X5: int > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc4305682042979456191nt_int @ X5 @ Y4 ) )
           => ~ ( member2643936169264416010at_nat @ Z @ ( C @ X5 @ Y4 ) ) ) ) ).

% mem_case_prodE
thf(fact_5240_mem__case__prodE,axiom,
    ! [Z: set_Pr958786334691620121nt_int,C: ( int > option6357759511663192854e_term ) > product_prod_int_int > set_se6260736226359567993nt_int,P4: produc7773217078559923341nt_int] :
      ( ( member2340774599025711042nt_int @ Z @ ( produc575502675617541261nt_int @ C @ P4 ) )
     => ~ ! [X5: int > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc4305682042979456191nt_int @ X5 @ Y4 ) )
           => ~ ( member2340774599025711042nt_int @ Z @ ( C @ X5 @ Y4 ) ) ) ) ).

% mem_case_prodE
thf(fact_5241_case__prodE,axiom,
    ! [C: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o,P4: produc8763457246119570046nteger] :
      ( ( produc127349428274296955eger_o @ C @ P4 )
     => ~ ! [X5: code_integer > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc6137756002093451184nteger @ X5 @ Y4 ) )
           => ~ ( C @ X5 @ Y4 ) ) ) ).

% case_prodE
thf(fact_5242_case__prodE,axiom,
    ! [C: ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > $o,P4: produc989692990947075319atural] :
      ( ( produc2278936416606902338ural_o @ C @ P4 )
     => ~ ! [X5: produc4972180933644002618e_term > option6357759511663192854e_term,Y4: produc7822875418678951345atural] :
            ( ( P4
              = ( produc3831813291587773865atural @ X5 @ Y4 ) )
           => ~ ( C @ X5 @ Y4 ) ) ) ).

% case_prodE
thf(fact_5243_case__prodE,axiom,
    ! [C: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o,P4: produc1908205239877642774nteger] :
      ( ( produc6253627499356882019eger_o @ C @ P4 )
     => ~ ! [X5: produc6241069584506657477e_term > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc8603105652947943368nteger @ X5 @ Y4 ) )
           => ~ ( C @ X5 @ Y4 ) ) ) ).

% case_prodE
thf(fact_5244_case__prodE,axiom,
    ! [C: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > $o,P4: produc2285326912895808259nt_int] :
      ( ( produc1573362020775583542_int_o @ C @ P4 )
     => ~ ! [X5: produc8551481072490612790e_term > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc5700946648718959541nt_int @ X5 @ Y4 ) )
           => ~ ( C @ X5 @ Y4 ) ) ) ).

% case_prodE
thf(fact_5245_case__prodE,axiom,
    ! [C: ( int > option6357759511663192854e_term ) > product_prod_int_int > $o,P4: produc7773217078559923341nt_int] :
      ( ( produc2558449545302689196_int_o @ C @ P4 )
     => ~ ! [X5: int > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc4305682042979456191nt_int @ X5 @ Y4 ) )
           => ~ ( C @ X5 @ Y4 ) ) ) ).

% case_prodE
thf(fact_5246_case__prodE,axiom,
    ! [C: int > int > $o,P4: product_prod_int_int] :
      ( ( produc4947309494688390418_int_o @ C @ P4 )
     => ~ ! [X5: int,Y4: int] :
            ( ( P4
              = ( product_Pair_int_int @ X5 @ Y4 ) )
           => ~ ( C @ X5 @ Y4 ) ) ) ).

% case_prodE
thf(fact_5247_case__prodD,axiom,
    ! [F: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o,A: code_integer > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( produc127349428274296955eger_o @ F @ ( produc6137756002093451184nteger @ A @ B ) )
     => ( F @ A @ B ) ) ).

% case_prodD
thf(fact_5248_case__prodD,axiom,
    ! [F: ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > $o,A: produc4972180933644002618e_term > option6357759511663192854e_term,B: produc7822875418678951345atural] :
      ( ( produc2278936416606902338ural_o @ F @ ( produc3831813291587773865atural @ A @ B ) )
     => ( F @ A @ B ) ) ).

% case_prodD
thf(fact_5249_case__prodD,axiom,
    ! [F: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o,A: produc6241069584506657477e_term > option6357759511663192854e_term,B: produc8923325533196201883nteger] :
      ( ( produc6253627499356882019eger_o @ F @ ( produc8603105652947943368nteger @ A @ B ) )
     => ( F @ A @ B ) ) ).

% case_prodD
thf(fact_5250_case__prodD,axiom,
    ! [F: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > $o,A: produc8551481072490612790e_term > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( produc1573362020775583542_int_o @ F @ ( produc5700946648718959541nt_int @ A @ B ) )
     => ( F @ A @ B ) ) ).

% case_prodD
thf(fact_5251_case__prodD,axiom,
    ! [F: ( int > option6357759511663192854e_term ) > product_prod_int_int > $o,A: int > option6357759511663192854e_term,B: product_prod_int_int] :
      ( ( produc2558449545302689196_int_o @ F @ ( produc4305682042979456191nt_int @ A @ B ) )
     => ( F @ A @ B ) ) ).

% case_prodD
thf(fact_5252_case__prodD,axiom,
    ! [F: int > int > $o,A: int,B: int] :
      ( ( produc4947309494688390418_int_o @ F @ ( product_Pair_int_int @ A @ B ) )
     => ( F @ A @ B ) ) ).

% case_prodD
thf(fact_5253_case__prodE_H,axiom,
    ! [C: nat > nat > product_prod_nat_nat > $o,P4: product_prod_nat_nat,Z: product_prod_nat_nat] :
      ( ( produc8739625826339149834_nat_o @ C @ P4 @ Z )
     => ~ ! [X5: nat,Y4: nat] :
            ( ( P4
              = ( product_Pair_nat_nat @ X5 @ Y4 ) )
           => ~ ( C @ X5 @ Y4 @ Z ) ) ) ).

% case_prodE'
thf(fact_5254_case__prodD_H,axiom,
    ! [R5: nat > nat > product_prod_nat_nat > $o,A: nat,B: nat,C: product_prod_nat_nat] :
      ( ( produc8739625826339149834_nat_o @ R5 @ ( product_Pair_nat_nat @ A @ B ) @ C )
     => ( R5 @ A @ B @ C ) ) ).

% case_prodD'
thf(fact_5255_xor__num_Ocases,axiom,
    ! [X: product_prod_num_num] :
      ( ( X
       != ( product_Pair_num_num @ one @ one ) )
     => ( ! [N2: num] :
            ( X
           != ( product_Pair_num_num @ one @ ( bit0 @ N2 ) ) )
       => ( ! [N2: num] :
              ( X
             != ( product_Pair_num_num @ one @ ( bit1 @ N2 ) ) )
         => ( ! [M4: num] :
                ( X
               != ( product_Pair_num_num @ ( bit0 @ M4 ) @ one ) )
           => ( ! [M4: num,N2: num] :
                  ( X
                 != ( product_Pair_num_num @ ( bit0 @ M4 ) @ ( bit0 @ N2 ) ) )
             => ( ! [M4: num,N2: num] :
                    ( X
                   != ( product_Pair_num_num @ ( bit0 @ M4 ) @ ( bit1 @ N2 ) ) )
               => ( ! [M4: num] :
                      ( X
                     != ( product_Pair_num_num @ ( bit1 @ M4 ) @ one ) )
                 => ( ! [M4: num,N2: num] :
                        ( X
                       != ( product_Pair_num_num @ ( bit1 @ M4 ) @ ( bit0 @ N2 ) ) )
                   => ~ ! [M4: num,N2: num] :
                          ( X
                         != ( product_Pair_num_num @ ( bit1 @ M4 ) @ ( bit1 @ N2 ) ) ) ) ) ) ) ) ) ) ) ).

% xor_num.cases
thf(fact_5256_Collect__case__prod__mono,axiom,
    ! [A3: int > int > $o,B3: int > int > $o] :
      ( ( ord_le6741204236512500942_int_o @ A3 @ B3 )
     => ( ord_le2843351958646193337nt_int @ ( collec213857154873943460nt_int @ ( produc4947309494688390418_int_o @ A3 ) ) @ ( collec213857154873943460nt_int @ ( produc4947309494688390418_int_o @ B3 ) ) ) ) ).

% Collect_case_prod_mono
thf(fact_5257_execute__bind__case,axiom,
    ! [F: heap_Time_Heap_a,G: a > heap_Time_Heap_a,H: heap_e7401611519738050253t_unit] :
      ( ( heap_Time_execute_a @ ( heap_Time_bind_a_a @ F @ G ) @ H )
      = ( case_o6061097939050036047it_nat @ none_P2651198173097904984it_nat
        @ ( produc7850007024774191849it_nat
          @ ^ [X4: a] :
              ( produc5645566021302314940it_nat
              @ ^ [H7: heap_e7401611519738050253t_unit,N5: nat] : ( heap_T7616092557645711335rame_a @ N5 @ ( heap_Time_execute_a @ ( G @ X4 ) @ H7 ) ) ) )
        @ ( heap_Time_execute_a @ F @ H ) ) ) ).

% execute_bind_case
thf(fact_5258_numeral__Bit1,axiom,
    ! [N: num] :
      ( ( numera5444537566228673987atural @ ( bit1 @ N ) )
      = ( plus_p4538020629002901425atural @ ( plus_p4538020629002901425atural @ ( numera5444537566228673987atural @ N ) @ ( numera5444537566228673987atural @ N ) ) @ one_one_Code_natural ) ) ).

% numeral_Bit1
thf(fact_5259_numeral__Bit1,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ ( bit1 @ N ) )
      = ( plus_plus_int @ ( plus_plus_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ N ) ) @ one_one_int ) ) ).

% numeral_Bit1
thf(fact_5260_numeral__Bit1,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit1 @ N ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ N ) ) @ one_one_nat ) ) ).

% numeral_Bit1
thf(fact_5261_numeral__Bit1,axiom,
    ! [N: num] :
      ( ( numera6620942414471956472nteger @ ( bit1 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ N ) @ ( numera6620942414471956472nteger @ N ) ) @ one_one_Code_integer ) ) ).

% numeral_Bit1
thf(fact_5262_numeral__Bit1,axiom,
    ! [N: num] :
      ( ( numeral_numeral_rat @ ( bit1 @ N ) )
      = ( plus_plus_rat @ ( plus_plus_rat @ ( numeral_numeral_rat @ N ) @ ( numeral_numeral_rat @ N ) ) @ one_one_rat ) ) ).

% numeral_Bit1
thf(fact_5263_numeral__code_I3_J,axiom,
    ! [N: num] :
      ( ( numera5444537566228673987atural @ ( bit1 @ N ) )
      = ( plus_p4538020629002901425atural @ ( plus_p4538020629002901425atural @ ( numera5444537566228673987atural @ N ) @ ( numera5444537566228673987atural @ N ) ) @ one_one_Code_natural ) ) ).

% numeral_code(3)
thf(fact_5264_numeral__code_I3_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ ( bit1 @ N ) )
      = ( plus_plus_int @ ( plus_plus_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ N ) ) @ one_one_int ) ) ).

% numeral_code(3)
thf(fact_5265_numeral__code_I3_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit1 @ N ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ N ) ) @ one_one_nat ) ) ).

% numeral_code(3)
thf(fact_5266_numeral__code_I3_J,axiom,
    ! [N: num] :
      ( ( numera6620942414471956472nteger @ ( bit1 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ N ) @ ( numera6620942414471956472nteger @ N ) ) @ one_one_Code_integer ) ) ).

% numeral_code(3)
thf(fact_5267_numeral__code_I3_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_rat @ ( bit1 @ N ) )
      = ( plus_plus_rat @ ( plus_plus_rat @ ( numeral_numeral_rat @ N ) @ ( numeral_numeral_rat @ N ) ) @ one_one_rat ) ) ).

% numeral_code(3)
thf(fact_5268_power__numeral__odd,axiom,
    ! [Z: nat,W: num] :
      ( ( power_power_nat @ Z @ ( numeral_numeral_nat @ ( bit1 @ W ) ) )
      = ( times_times_nat @ ( times_times_nat @ Z @ ( power_power_nat @ Z @ ( numeral_numeral_nat @ W ) ) ) @ ( power_power_nat @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_odd
thf(fact_5269_power__numeral__odd,axiom,
    ! [Z: int,W: num] :
      ( ( power_power_int @ Z @ ( numeral_numeral_nat @ ( bit1 @ W ) ) )
      = ( times_times_int @ ( times_times_int @ Z @ ( power_power_int @ Z @ ( numeral_numeral_nat @ W ) ) ) @ ( power_power_int @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_odd
thf(fact_5270_power__numeral__odd,axiom,
    ! [Z: code_integer,W: num] :
      ( ( power_8256067586552552935nteger @ Z @ ( numeral_numeral_nat @ ( bit1 @ W ) ) )
      = ( times_3573771949741848930nteger @ ( times_3573771949741848930nteger @ Z @ ( power_8256067586552552935nteger @ Z @ ( numeral_numeral_nat @ W ) ) ) @ ( power_8256067586552552935nteger @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_odd
thf(fact_5271_power__numeral__odd,axiom,
    ! [Z: rat,W: num] :
      ( ( power_power_rat @ Z @ ( numeral_numeral_nat @ ( bit1 @ W ) ) )
      = ( times_times_rat @ ( times_times_rat @ Z @ ( power_power_rat @ Z @ ( numeral_numeral_nat @ W ) ) ) @ ( power_power_rat @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_odd
thf(fact_5272_Heap__Time__Monad_Obind__def,axiom,
    ( heap_Time_bind_a_a
    = ( ^ [F2: heap_Time_Heap_a,G2: a > heap_Time_Heap_a] :
          ( heap_Time_Heap_a2
          @ ^ [H4: heap_e7401611519738050253t_unit] :
              ( case_o6061097939050036047it_nat @ none_P2651198173097904984it_nat
              @ ( produc7850007024774191849it_nat
                @ ^ [R4: a] :
                    ( produc5645566021302314940it_nat
                    @ ^ [H7: heap_e7401611519738050253t_unit,N5: nat] : ( heap_T7616092557645711335rame_a @ N5 @ ( heap_Time_execute_a @ ( G2 @ R4 ) @ H7 ) ) ) )
              @ ( heap_Time_execute_a @ F2 @ H4 ) ) ) ) ) ).

% Heap_Time_Monad.bind_def
thf(fact_5273_Heap__Time__Monad_Obind__def,axiom,
    ( heap_T8685611227969916822t_unit
    = ( ^ [F2: heap_Time_Heap_a,G2: a > heap_T5738788834812785303t_unit] :
          ( heap_T6183433275982383450t_unit
          @ ^ [H4: heap_e7401611519738050253t_unit] :
              ( case_o7727800614283616222it_nat @ none_P9117596204409417319it_nat
              @ ( produc5648861294512138360it_nat
                @ ^ [R4: a] :
                    ( produc7488178964372371019it_nat
                    @ ^ [H7: heap_e7401611519738050253t_unit,N5: nat] : ( heap_T3616969660504097270t_unit @ N5 @ ( heap_T875086893843062177t_unit @ ( G2 @ R4 ) @ H7 ) ) ) )
              @ ( heap_Time_execute_a @ F2 @ H4 ) ) ) ) ) ).

% Heap_Time_Monad.bind_def
thf(fact_5274_cong__exp__iff__simps_I3_J,axiom,
    ! [N: num,Q2: num] :
      ( ( modulo_modulo_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) @ ( numeral_numeral_int @ ( bit0 @ Q2 ) ) )
     != zero_zero_int ) ).

% cong_exp_iff_simps(3)
thf(fact_5275_cong__exp__iff__simps_I3_J,axiom,
    ! [N: num,Q2: num] :
      ( ( modulo_modulo_nat @ ( numeral_numeral_nat @ ( bit1 @ N ) ) @ ( numeral_numeral_nat @ ( bit0 @ Q2 ) ) )
     != zero_zero_nat ) ).

% cong_exp_iff_simps(3)
thf(fact_5276_cong__exp__iff__simps_I3_J,axiom,
    ! [N: num,Q2: num] :
      ( ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ ( bit1 @ N ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ Q2 ) ) )
     != zero_z3403309356797280102nteger ) ).

% cong_exp_iff_simps(3)
thf(fact_5277_numeral__3__eq__3,axiom,
    ( ( numeral_numeral_nat @ ( bit1 @ one ) )
    = ( suc @ ( suc @ ( suc @ zero_zero_nat ) ) ) ) ).

% numeral_3_eq_3
thf(fact_5278_Suc3__eq__add__3,axiom,
    ! [N: nat] :
      ( ( suc @ ( suc @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ N ) ) ).

% Suc3_eq_add_3
thf(fact_5279_take__bit__num__eq__None__imp,axiom,
    ! [M: nat,N: num] :
      ( ( ( bit_take_bit_num @ M @ N )
        = none_num )
     => ( ( bit_se569199155075624693atural @ M @ ( numera5444537566228673987atural @ N ) )
        = zero_z2226904508553997617atural ) ) ).

% take_bit_num_eq_None_imp
thf(fact_5280_take__bit__num__eq__None__imp,axiom,
    ! [M: nat,N: num] :
      ( ( ( bit_take_bit_num @ M @ N )
        = none_num )
     => ( ( bit_se1745604003318907178nteger @ M @ ( numera6620942414471956472nteger @ N ) )
        = zero_z3403309356797280102nteger ) ) ).

% take_bit_num_eq_None_imp
thf(fact_5281_take__bit__num__eq__None__imp,axiom,
    ! [M: nat,N: num] :
      ( ( ( bit_take_bit_num @ M @ N )
        = none_num )
     => ( ( bit_se2925701944663578781it_nat @ M @ ( numeral_numeral_nat @ N ) )
        = zero_zero_nat ) ) ).

% take_bit_num_eq_None_imp
thf(fact_5282_take__bit__num__eq__None__imp,axiom,
    ! [M: nat,N: num] :
      ( ( ( bit_take_bit_num @ M @ N )
        = none_num )
     => ( ( bit_se2923211474154528505it_int @ M @ ( numeral_numeral_int @ N ) )
        = zero_zero_int ) ) ).

% take_bit_num_eq_None_imp
thf(fact_5283_num_Osize_I6_J,axiom,
    ! [X32: num] :
      ( ( size_size_num @ ( bit1 @ X32 ) )
      = ( plus_plus_nat @ ( size_size_num @ X32 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size(6)
thf(fact_5284_num_Osize__gen_I3_J,axiom,
    ! [X32: num] :
      ( ( size_num @ ( bit1 @ X32 ) )
      = ( plus_plus_nat @ ( size_num @ X32 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size_gen(3)
thf(fact_5285_cong__exp__iff__simps_I11_J,axiom,
    ! [M: num,Q2: num] :
      ( ( ( modulo_modulo_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( numeral_numeral_int @ ( bit0 @ Q2 ) ) )
        = ( modulo_modulo_int @ ( numeral_numeral_int @ one ) @ ( numeral_numeral_int @ ( bit0 @ Q2 ) ) ) )
      = ( ( modulo_modulo_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ Q2 ) )
        = zero_zero_int ) ) ).

% cong_exp_iff_simps(11)
thf(fact_5286_cong__exp__iff__simps_I11_J,axiom,
    ! [M: num,Q2: num] :
      ( ( ( modulo_modulo_nat @ ( numeral_numeral_nat @ ( bit1 @ M ) ) @ ( numeral_numeral_nat @ ( bit0 @ Q2 ) ) )
        = ( modulo_modulo_nat @ ( numeral_numeral_nat @ one ) @ ( numeral_numeral_nat @ ( bit0 @ Q2 ) ) ) )
      = ( ( modulo_modulo_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ Q2 ) )
        = zero_zero_nat ) ) ).

% cong_exp_iff_simps(11)
thf(fact_5287_cong__exp__iff__simps_I11_J,axiom,
    ! [M: num,Q2: num] :
      ( ( ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ ( bit1 @ M ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ Q2 ) ) )
        = ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ one ) @ ( numera6620942414471956472nteger @ ( bit0 @ Q2 ) ) ) )
      = ( ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ Q2 ) )
        = zero_z3403309356797280102nteger ) ) ).

% cong_exp_iff_simps(11)
thf(fact_5288_cong__exp__iff__simps_I7_J,axiom,
    ! [Q2: num,N: num] :
      ( ( ( modulo_modulo_int @ ( numeral_numeral_int @ one ) @ ( numeral_numeral_int @ ( bit0 @ Q2 ) ) )
        = ( modulo_modulo_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) @ ( numeral_numeral_int @ ( bit0 @ Q2 ) ) ) )
      = ( ( modulo_modulo_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ Q2 ) )
        = zero_zero_int ) ) ).

% cong_exp_iff_simps(7)
thf(fact_5289_cong__exp__iff__simps_I7_J,axiom,
    ! [Q2: num,N: num] :
      ( ( ( modulo_modulo_nat @ ( numeral_numeral_nat @ one ) @ ( numeral_numeral_nat @ ( bit0 @ Q2 ) ) )
        = ( modulo_modulo_nat @ ( numeral_numeral_nat @ ( bit1 @ N ) ) @ ( numeral_numeral_nat @ ( bit0 @ Q2 ) ) ) )
      = ( ( modulo_modulo_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ Q2 ) )
        = zero_zero_nat ) ) ).

% cong_exp_iff_simps(7)
thf(fact_5290_cong__exp__iff__simps_I7_J,axiom,
    ! [Q2: num,N: num] :
      ( ( ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ one ) @ ( numera6620942414471956472nteger @ ( bit0 @ Q2 ) ) )
        = ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ ( bit1 @ N ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ Q2 ) ) ) )
      = ( ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ N ) @ ( numera6620942414471956472nteger @ Q2 ) )
        = zero_z3403309356797280102nteger ) ) ).

% cong_exp_iff_simps(7)
thf(fact_5291_take__bit__num__def,axiom,
    ( bit_take_bit_num
    = ( ^ [N5: nat,M5: num] :
          ( if_option_num
          @ ( ( bit_se2925701944663578781it_nat @ N5 @ ( numeral_numeral_nat @ M5 ) )
            = zero_zero_nat )
          @ none_num
          @ ( some_num @ ( num_of_nat @ ( bit_se2925701944663578781it_nat @ N5 @ ( numeral_numeral_nat @ M5 ) ) ) ) ) ) ) ).

% take_bit_num_def
thf(fact_5292_numeral__BitM,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ ( bitM @ N ) )
      = ( minus_minus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) @ one_one_int ) ) ).

% numeral_BitM
thf(fact_5293_numeral__BitM,axiom,
    ! [N: num] :
      ( ( numera6620942414471956472nteger @ ( bitM @ N ) )
      = ( minus_8373710615458151222nteger @ ( numera6620942414471956472nteger @ ( bit0 @ N ) ) @ one_one_Code_integer ) ) ).

% numeral_BitM
thf(fact_5294_numeral__BitM,axiom,
    ! [N: num] :
      ( ( numeral_numeral_rat @ ( bitM @ N ) )
      = ( minus_minus_rat @ ( numeral_numeral_rat @ ( bit0 @ N ) ) @ one_one_rat ) ) ).

% numeral_BitM
thf(fact_5295_Suc__mod__eq__add3__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ N )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ N ) ) ).

% Suc_mod_eq_add3_mod
thf(fact_5296_Suc__div__eq__add3__div,axiom,
    ! [M: nat,N: nat] :
      ( ( divide_divide_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ N )
      = ( divide_divide_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ N ) ) ).

% Suc_div_eq_add3_div
thf(fact_5297_Divides_Oadjust__div__def,axiom,
    ( adjust_div
    = ( produc8211389475949308722nt_int
      @ ^ [Q4: int,R4: int] : ( plus_plus_int @ Q4 @ ( zero_n2684676970156552555ol_int @ ( R4 != zero_zero_int ) ) ) ) ) ).

% Divides.adjust_div_def
thf(fact_5298_take__bit__Suc__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_se569199155075624693atural @ ( suc @ N ) @ ( numera5444537566228673987atural @ ( bit1 @ K ) ) )
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( bit_se569199155075624693atural @ N @ ( numera5444537566228673987atural @ K ) ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) @ one_one_Code_natural ) ) ).

% take_bit_Suc_bit1
thf(fact_5299_take__bit__Suc__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_se1745604003318907178nteger @ ( suc @ N ) @ ( numera6620942414471956472nteger @ ( bit1 @ K ) ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( bit_se1745604003318907178nteger @ N @ ( numera6620942414471956472nteger @ K ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ one_one_Code_integer ) ) ).

% take_bit_Suc_bit1
thf(fact_5300_take__bit__Suc__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_se2925701944663578781it_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ ( bit1 @ K ) ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( bit_se2925701944663578781it_nat @ N @ ( numeral_numeral_nat @ K ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ).

% take_bit_Suc_bit1
thf(fact_5301_take__bit__Suc__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_se2923211474154528505it_int @ ( suc @ N ) @ ( numeral_numeral_int @ ( bit1 @ K ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_se2923211474154528505it_int @ N @ ( numeral_numeral_int @ K ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% take_bit_Suc_bit1
thf(fact_5302_divmod__nat__def,axiom,
    ( divmod_nat
    = ( ^ [M5: nat,N5: nat] : ( product_Pair_nat_nat @ ( divide_divide_nat @ M5 @ N5 ) @ ( modulo_modulo_nat @ M5 @ N5 ) ) ) ) ).

% divmod_nat_def
thf(fact_5303_bit__cut__integer__def,axiom,
    ( code_bit_cut_integer
    = ( ^ [K3: code_integer] :
          ( produc6677183202524767010eger_o @ ( divide6298287555418463151nteger @ K3 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
          @ ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ K3 ) ) ) ) ).

% bit_cut_integer_def
thf(fact_5304_integer__of__int__code,axiom,
    ( code_integer_of_int
    = ( ^ [K3: int] :
          ( if_Code_integer @ ( ord_less_int @ K3 @ zero_zero_int ) @ ( uminus1351360451143612070nteger @ ( code_integer_of_int @ ( uminus_uminus_int @ K3 ) ) )
          @ ( if_Code_integer @ ( K3 = zero_zero_int ) @ zero_z3403309356797280102nteger
            @ ( if_Code_integer
              @ ( ( modulo_modulo_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
                = zero_zero_int )
              @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( code_integer_of_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) )
              @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( code_integer_of_int @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) @ one_one_Code_integer ) ) ) ) ) ) ).

% integer_of_int_code
thf(fact_5305_int__ge__less__than__def,axiom,
    ( int_ge_less_than
    = ( ^ [D2: int] :
          ( collec213857154873943460nt_int
          @ ( produc4947309494688390418_int_o
            @ ^ [Z7: int,Z3: int] :
                ( ( ord_less_eq_int @ D2 @ Z7 )
                & ( ord_less_int @ Z7 @ Z3 ) ) ) ) ) ) ).

% int_ge_less_than_def
thf(fact_5306_int__ge__less__than2__def,axiom,
    ( int_ge_less_than2
    = ( ^ [D2: int] :
          ( collec213857154873943460nt_int
          @ ( produc4947309494688390418_int_o
            @ ^ [Z7: int,Z3: int] :
                ( ( ord_less_eq_int @ D2 @ Z3 )
                & ( ord_less_int @ Z7 @ Z3 ) ) ) ) ) ) ).

% int_ge_less_than2_def
thf(fact_5307_take__bit__numeral__bit1,axiom,
    ! [L: num,K: num] :
      ( ( bit_se569199155075624693atural @ ( numeral_numeral_nat @ L ) @ ( numera5444537566228673987atural @ ( bit1 @ K ) ) )
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( bit_se569199155075624693atural @ ( pred_numeral @ L ) @ ( numera5444537566228673987atural @ K ) ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) @ one_one_Code_natural ) ) ).

% take_bit_numeral_bit1
thf(fact_5308_take__bit__numeral__bit1,axiom,
    ! [L: num,K: num] :
      ( ( bit_se1745604003318907178nteger @ ( numeral_numeral_nat @ L ) @ ( numera6620942414471956472nteger @ ( bit1 @ K ) ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( bit_se1745604003318907178nteger @ ( pred_numeral @ L ) @ ( numera6620942414471956472nteger @ K ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ one_one_Code_integer ) ) ).

% take_bit_numeral_bit1
thf(fact_5309_take__bit__numeral__bit1,axiom,
    ! [L: num,K: num] :
      ( ( bit_se2925701944663578781it_nat @ ( numeral_numeral_nat @ L ) @ ( numeral_numeral_nat @ ( bit1 @ K ) ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( bit_se2925701944663578781it_nat @ ( pred_numeral @ L ) @ ( numeral_numeral_nat @ K ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ one_one_nat ) ) ).

% take_bit_numeral_bit1
thf(fact_5310_take__bit__numeral__bit1,axiom,
    ! [L: num,K: num] :
      ( ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ L ) @ ( numeral_numeral_int @ ( bit1 @ K ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_se2923211474154528505it_int @ ( pred_numeral @ L ) @ ( numeral_numeral_int @ K ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% take_bit_numeral_bit1
thf(fact_5311_Code__Numeral_Onegative__def,axiom,
    ( code_negative
    = ( comp_C3531382070062128313er_num @ uminus1351360451143612070nteger @ numera6620942414471956472nteger ) ) ).

% Code_Numeral.negative_def
thf(fact_5312_push__bit__numeral__minus__1,axiom,
    ! [N: num] :
      ( ( bit_se545348938243370406it_int @ ( numeral_numeral_nat @ N ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ N ) ) ) ) ).

% push_bit_numeral_minus_1
thf(fact_5313_push__bit__numeral__minus__1,axiom,
    ! [N: num] :
      ( ( bit_se7788150548672797655nteger @ ( numeral_numeral_nat @ N ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( uminus1351360451143612070nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ N ) ) ) ) ).

% push_bit_numeral_minus_1
thf(fact_5314_split__part,axiom,
    ! [P: $o,Q: int > int > $o] :
      ( ( produc4947309494688390418_int_o
        @ ^ [A4: int,B4: int] :
            ( P
            & ( Q @ A4 @ B4 ) ) )
      = ( ^ [Ab: product_prod_int_int] :
            ( P
            & ( produc4947309494688390418_int_o @ Q @ Ab ) ) ) ) ).

% split_part
thf(fact_5315_push__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se545348938243370406it_int @ N @ zero_zero_int )
      = zero_zero_int ) ).

% push_bit_of_0
thf(fact_5316_push__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se7788150548672797655nteger @ N @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% push_bit_of_0
thf(fact_5317_push__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se6611745700429515170atural @ N @ zero_z2226904508553997617atural )
      = zero_z2226904508553997617atural ) ).

% push_bit_of_0
thf(fact_5318_push__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se547839408752420682it_nat @ N @ zero_zero_nat )
      = zero_zero_nat ) ).

% push_bit_of_0
thf(fact_5319_push__bit__eq__0__iff,axiom,
    ! [N: nat,A: int] :
      ( ( ( bit_se545348938243370406it_int @ N @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% push_bit_eq_0_iff
thf(fact_5320_push__bit__eq__0__iff,axiom,
    ! [N: nat,A: code_integer] :
      ( ( ( bit_se7788150548672797655nteger @ N @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% push_bit_eq_0_iff
thf(fact_5321_push__bit__eq__0__iff,axiom,
    ! [N: nat,A: code_natural] :
      ( ( ( bit_se6611745700429515170atural @ N @ A )
        = zero_z2226904508553997617atural )
      = ( A = zero_z2226904508553997617atural ) ) ).

% push_bit_eq_0_iff
thf(fact_5322_push__bit__eq__0__iff,axiom,
    ! [N: nat,A: nat] :
      ( ( ( bit_se547839408752420682it_nat @ N @ A )
        = zero_zero_nat )
      = ( A = zero_zero_nat ) ) ).

% push_bit_eq_0_iff
thf(fact_5323_push__bit__push__bit,axiom,
    ! [M: nat,N: nat,A: nat] :
      ( ( bit_se547839408752420682it_nat @ M @ ( bit_se547839408752420682it_nat @ N @ A ) )
      = ( bit_se547839408752420682it_nat @ ( plus_plus_nat @ M @ N ) @ A ) ) ).

% push_bit_push_bit
thf(fact_5324_pred__numeral__simps_I1_J,axiom,
    ( ( pred_numeral @ one )
    = zero_zero_nat ) ).

% pred_numeral_simps(1)
thf(fact_5325_push__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se6611745700429515170atural @ N @ one_one_Code_natural )
      = ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) ) ).

% push_bit_of_1
thf(fact_5326_push__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se545348938243370406it_int @ N @ one_one_int )
      = ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ).

% push_bit_of_1
thf(fact_5327_push__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se7788150548672797655nteger @ N @ one_one_Code_integer )
      = ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) ) ).

% push_bit_of_1
thf(fact_5328_push__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se547839408752420682it_nat @ N @ one_one_nat )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% push_bit_of_1
thf(fact_5329_even__push__bit__iff,axiom,
    ! [N: nat,A: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se545348938243370406it_int @ N @ A ) )
      = ( ( N != zero_zero_nat )
        | ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_push_bit_iff
thf(fact_5330_even__push__bit__iff,axiom,
    ! [N: nat,A: code_integer] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se7788150548672797655nteger @ N @ A ) )
      = ( ( N != zero_zero_nat )
        | ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_push_bit_iff
thf(fact_5331_even__push__bit__iff,axiom,
    ! [N: nat,A: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se547839408752420682it_nat @ N @ A ) )
      = ( ( N != zero_zero_nat )
        | ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_push_bit_iff
thf(fact_5332_push__bit__of__Suc__0,axiom,
    ! [N: nat] :
      ( ( bit_se547839408752420682it_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% push_bit_of_Suc_0
thf(fact_5333_take__bit__num__simps_I7_J,axiom,
    ! [R: num,M: num] :
      ( ( bit_take_bit_num @ ( numeral_numeral_nat @ R ) @ ( bit1 @ M ) )
      = ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_take_bit_num @ ( pred_numeral @ R ) @ M ) ) ) ) ).

% take_bit_num_simps(7)
thf(fact_5334_take__bit__num__simps_I6_J,axiom,
    ! [R: num,M: num] :
      ( ( bit_take_bit_num @ ( numeral_numeral_nat @ R ) @ ( bit0 @ M ) )
      = ( case_o6005452278849405969um_num @ none_num
        @ ^ [Q4: num] : ( some_num @ ( bit0 @ Q4 ) )
        @ ( bit_take_bit_num @ ( pred_numeral @ R ) @ M ) ) ) ).

% take_bit_num_simps(6)
thf(fact_5335_prod_Odisc__eq__case,axiom,
    ! [Prod: product_prod_int_int] :
      ( produc4947309494688390418_int_o
      @ ^ [Uu: int,Uv: int] : $true
      @ Prod ) ).

% prod.disc_eq_case
thf(fact_5336_push__bit__add,axiom,
    ! [N: nat,A: int,B: int] :
      ( ( bit_se545348938243370406it_int @ N @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( bit_se545348938243370406it_int @ N @ A ) @ ( bit_se545348938243370406it_int @ N @ B ) ) ) ).

% push_bit_add
thf(fact_5337_push__bit__add,axiom,
    ! [N: nat,A: nat,B: nat] :
      ( ( bit_se547839408752420682it_nat @ N @ ( plus_plus_nat @ A @ B ) )
      = ( plus_plus_nat @ ( bit_se547839408752420682it_nat @ N @ A ) @ ( bit_se547839408752420682it_nat @ N @ B ) ) ) ).

% push_bit_add
thf(fact_5338_push__bit__take__bit,axiom,
    ! [M: nat,N: nat,A: nat] :
      ( ( bit_se547839408752420682it_nat @ M @ ( bit_se2925701944663578781it_nat @ N @ A ) )
      = ( bit_se2925701944663578781it_nat @ ( plus_plus_nat @ M @ N ) @ ( bit_se547839408752420682it_nat @ M @ A ) ) ) ).

% push_bit_take_bit
thf(fact_5339_push__bit__take__bit,axiom,
    ! [M: nat,N: nat,A: int] :
      ( ( bit_se545348938243370406it_int @ M @ ( bit_se2923211474154528505it_int @ N @ A ) )
      = ( bit_se2923211474154528505it_int @ ( plus_plus_nat @ M @ N ) @ ( bit_se545348938243370406it_int @ M @ A ) ) ) ).

% push_bit_take_bit
thf(fact_5340_flip__bit__nat__def,axiom,
    ( bit_se2161824704523386999it_nat
    = ( ^ [M5: nat,N5: nat] : ( bit_se6528837805403552850or_nat @ N5 @ ( bit_se547839408752420682it_nat @ M5 @ one_one_nat ) ) ) ) ).

% flip_bit_nat_def
thf(fact_5341_pred__numeral__def,axiom,
    ( pred_numeral
    = ( ^ [K3: num] : ( minus_minus_nat @ ( numeral_numeral_nat @ K3 ) @ one_one_nat ) ) ) ).

% pred_numeral_def
thf(fact_5342_flip__bit__eq__xor,axiom,
    ( bit_se2159334234014336723it_int
    = ( ^ [N5: nat,A4: int] : ( bit_se6526347334894502574or_int @ A4 @ ( bit_se545348938243370406it_int @ N5 @ one_one_int ) ) ) ) ).

% flip_bit_eq_xor
thf(fact_5343_flip__bit__eq__xor,axiom,
    ( bit_se1345352211410354436nteger
    = ( ^ [N5: nat,A4: code_integer] : ( bit_se3222712562003087583nteger @ A4 @ ( bit_se7788150548672797655nteger @ N5 @ one_one_Code_integer ) ) ) ) ).

% flip_bit_eq_xor
thf(fact_5344_flip__bit__eq__xor,axiom,
    ( bit_se168947363167071951atural
    = ( ^ [N5: nat,A4: code_natural] : ( bit_se2046307713759805098atural @ A4 @ ( bit_se6611745700429515170atural @ N5 @ one_one_Code_natural ) ) ) ) ).

% flip_bit_eq_xor
thf(fact_5345_flip__bit__eq__xor,axiom,
    ( bit_se2161824704523386999it_nat
    = ( ^ [N5: nat,A4: nat] : ( bit_se6528837805403552850or_nat @ A4 @ ( bit_se547839408752420682it_nat @ N5 @ one_one_nat ) ) ) ) ).

% flip_bit_eq_xor
thf(fact_5346_bit__cut__integer__code,axiom,
    ( code_bit_cut_integer
    = ( ^ [K3: code_integer] :
          ( if_Pro5737122678794959658eger_o @ ( K3 = zero_z3403309356797280102nteger ) @ ( produc6677183202524767010eger_o @ zero_z3403309356797280102nteger @ $false )
          @ ( produc9125791028180074456eger_o
            @ ^ [R4: code_integer,S2: code_integer] : ( produc6677183202524767010eger_o @ ( if_Code_integer @ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ K3 ) @ R4 @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R4 ) @ S2 ) ) @ ( S2 = one_one_Code_integer ) )
            @ ( code_divmod_abs @ K3 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% bit_cut_integer_code
thf(fact_5347_mask__numeral,axiom,
    ! [N: num] :
      ( ( bit_se943457434206027407atural @ ( numeral_numeral_nat @ N ) )
      = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se943457434206027407atural @ ( pred_numeral @ N ) ) ) ) ) ).

% mask_numeral
thf(fact_5348_mask__numeral,axiom,
    ! [N: num] :
      ( ( bit_se2119862282449309892nteger @ ( numeral_numeral_nat @ N ) )
      = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se2119862282449309892nteger @ ( pred_numeral @ N ) ) ) ) ) ).

% mask_numeral
thf(fact_5349_mask__numeral,axiom,
    ! [N: num] :
      ( ( bit_se2002935070580805687sk_nat @ ( numeral_numeral_nat @ N ) )
      = ( plus_plus_nat @ one_one_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se2002935070580805687sk_nat @ ( pred_numeral @ N ) ) ) ) ) ).

% mask_numeral
thf(fact_5350_mask__numeral,axiom,
    ! [N: num] :
      ( ( bit_se2000444600071755411sk_int @ ( numeral_numeral_nat @ N ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se2000444600071755411sk_int @ ( pred_numeral @ N ) ) ) ) ) ).

% mask_numeral
thf(fact_5351_nat__of__integer__non__positive,axiom,
    ! [K: code_integer] :
      ( ( ord_le3102999989581377725nteger @ K @ zero_z3403309356797280102nteger )
     => ( ( code_nat_of_integer @ K )
        = zero_zero_nat ) ) ).

% nat_of_integer_non_positive
thf(fact_5352_and__not__num_Osimps_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_and_not_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( case_o6005452278849405969um_num @ ( some_num @ one )
        @ ^ [N7: num] : ( some_num @ ( bit1 @ N7 ) )
        @ ( bit_and_not_num @ M @ N ) ) ) ).

% and_not_num.simps(8)
thf(fact_5353_take__bit__num__code,axiom,
    ( bit_take_bit_num
    = ( ^ [N5: nat,M5: num] :
          ( produc478579273971653890on_num
          @ ^ [A4: nat,X4: num] :
              ( case_nat_option_num @ none_num
              @ ^ [O: nat] :
                  ( case_num_option_num @ ( some_num @ one )
                  @ ^ [P5: num] :
                      ( case_o6005452278849405969um_num @ none_num
                      @ ^ [Q4: num] : ( some_num @ ( bit0 @ Q4 ) )
                      @ ( bit_take_bit_num @ O @ P5 ) )
                  @ ^ [P5: num] : ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_take_bit_num @ O @ P5 ) ) )
                  @ X4 )
              @ A4 )
          @ ( product_Pair_nat_num @ N5 @ M5 ) ) ) ) ).

% take_bit_num_code
thf(fact_5354_num__of__integer__code,axiom,
    ( code_num_of_integer
    = ( ^ [K3: code_integer] :
          ( if_num @ ( ord_le3102999989581377725nteger @ K3 @ one_one_Code_integer ) @ one
          @ ( produc7336495610019696514er_num
            @ ^ [L4: code_integer,J3: code_integer] : ( if_num @ ( J3 = zero_z3403309356797280102nteger ) @ ( plus_plus_num @ ( code_num_of_integer @ L4 ) @ ( code_num_of_integer @ L4 ) ) @ ( plus_plus_num @ ( plus_plus_num @ ( code_num_of_integer @ L4 ) @ ( code_num_of_integer @ L4 ) ) @ one ) )
            @ ( code_divmod_integer @ K3 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% num_of_integer_code
thf(fact_5355_mask__nat__positive__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( bit_se2002935070580805687sk_nat @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% mask_nat_positive_iff
thf(fact_5356_mask__0,axiom,
    ( ( bit_se2119862282449309892nteger @ zero_zero_nat )
    = zero_z3403309356797280102nteger ) ).

% mask_0
thf(fact_5357_mask__0,axiom,
    ( ( bit_se943457434206027407atural @ zero_zero_nat )
    = zero_z2226904508553997617atural ) ).

% mask_0
thf(fact_5358_mask__0,axiom,
    ( ( bit_se2002935070580805687sk_nat @ zero_zero_nat )
    = zero_zero_nat ) ).

% mask_0
thf(fact_5359_mask__0,axiom,
    ( ( bit_se2000444600071755411sk_int @ zero_zero_nat )
    = zero_zero_int ) ).

% mask_0
thf(fact_5360_mask__eq__0__iff,axiom,
    ! [N: nat] :
      ( ( ( bit_se2119862282449309892nteger @ N )
        = zero_z3403309356797280102nteger )
      = ( N = zero_zero_nat ) ) ).

% mask_eq_0_iff
thf(fact_5361_mask__eq__0__iff,axiom,
    ! [N: nat] :
      ( ( ( bit_se943457434206027407atural @ N )
        = zero_z2226904508553997617atural )
      = ( N = zero_zero_nat ) ) ).

% mask_eq_0_iff
thf(fact_5362_mask__eq__0__iff,axiom,
    ! [N: nat] :
      ( ( ( bit_se2002935070580805687sk_nat @ N )
        = zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% mask_eq_0_iff
thf(fact_5363_mask__eq__0__iff,axiom,
    ! [N: nat] :
      ( ( ( bit_se2000444600071755411sk_int @ N )
        = zero_zero_int )
      = ( N = zero_zero_nat ) ) ).

% mask_eq_0_iff
thf(fact_5364_case__nat__numeral,axiom,
    ! [A: option_num,F: nat > option_num,V: num] :
      ( ( case_nat_option_num @ A @ F @ ( numeral_numeral_nat @ V ) )
      = ( F @ ( pred_numeral @ V ) ) ) ).

% case_nat_numeral
thf(fact_5365_case__nat__numeral,axiom,
    ! [A: $o,F: nat > $o,V: num] :
      ( ( case_nat_o @ A @ F @ ( numeral_numeral_nat @ V ) )
      = ( F @ ( pred_numeral @ V ) ) ) ).

% case_nat_numeral
thf(fact_5366_case__nat__numeral,axiom,
    ! [A: nat,F: nat > nat,V: num] :
      ( ( case_nat_nat @ A @ F @ ( numeral_numeral_nat @ V ) )
      = ( F @ ( pred_numeral @ V ) ) ) ).

% case_nat_numeral
thf(fact_5367_mask__Suc__0,axiom,
    ( ( bit_se2119862282449309892nteger @ ( suc @ zero_zero_nat ) )
    = one_one_Code_integer ) ).

% mask_Suc_0
thf(fact_5368_mask__Suc__0,axiom,
    ( ( bit_se943457434206027407atural @ ( suc @ zero_zero_nat ) )
    = one_one_Code_natural ) ).

% mask_Suc_0
thf(fact_5369_mask__Suc__0,axiom,
    ( ( bit_se2002935070580805687sk_nat @ ( suc @ zero_zero_nat ) )
    = one_one_nat ) ).

% mask_Suc_0
thf(fact_5370_mask__Suc__0,axiom,
    ( ( bit_se2000444600071755411sk_int @ ( suc @ zero_zero_nat ) )
    = one_one_int ) ).

% mask_Suc_0
thf(fact_5371_take__bit__minus__one__eq__mask,axiom,
    ! [N: nat] :
      ( ( bit_se1745604003318907178nteger @ N @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( bit_se2119862282449309892nteger @ N ) ) ).

% take_bit_minus_one_eq_mask
thf(fact_5372_take__bit__minus__one__eq__mask,axiom,
    ! [N: nat] :
      ( ( bit_se2923211474154528505it_int @ N @ ( uminus_uminus_int @ one_one_int ) )
      = ( bit_se2000444600071755411sk_int @ N ) ) ).

% take_bit_minus_one_eq_mask
thf(fact_5373_case__nat__add__eq__if,axiom,
    ! [A: option_num,F: nat > option_num,V: num,N: nat] :
      ( ( case_nat_option_num @ A @ F @ ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ N ) )
      = ( F @ ( plus_plus_nat @ ( pred_numeral @ V ) @ N ) ) ) ).

% case_nat_add_eq_if
thf(fact_5374_case__nat__add__eq__if,axiom,
    ! [A: $o,F: nat > $o,V: num,N: nat] :
      ( ( case_nat_o @ A @ F @ ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ N ) )
      = ( F @ ( plus_plus_nat @ ( pred_numeral @ V ) @ N ) ) ) ).

% case_nat_add_eq_if
thf(fact_5375_case__nat__add__eq__if,axiom,
    ! [A: nat,F: nat > nat,V: num,N: nat] :
      ( ( case_nat_nat @ A @ F @ ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ N ) )
      = ( F @ ( plus_plus_nat @ ( pred_numeral @ V ) @ N ) ) ) ).

% case_nat_add_eq_if
thf(fact_5376_nat_Ocase__distrib,axiom,
    ! [H: option_num > option_num,F12: option_num,F23: nat > option_num,Nat: nat] :
      ( ( H @ ( case_nat_option_num @ F12 @ F23 @ Nat ) )
      = ( case_nat_option_num @ ( H @ F12 )
        @ ^ [X4: nat] : ( H @ ( F23 @ X4 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_5377_nat_Ocase__distrib,axiom,
    ! [H: option_num > $o,F12: option_num,F23: nat > option_num,Nat: nat] :
      ( ( H @ ( case_nat_option_num @ F12 @ F23 @ Nat ) )
      = ( case_nat_o @ ( H @ F12 )
        @ ^ [X4: nat] : ( H @ ( F23 @ X4 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_5378_nat_Ocase__distrib,axiom,
    ! [H: option_num > nat,F12: option_num,F23: nat > option_num,Nat: nat] :
      ( ( H @ ( case_nat_option_num @ F12 @ F23 @ Nat ) )
      = ( case_nat_nat @ ( H @ F12 )
        @ ^ [X4: nat] : ( H @ ( F23 @ X4 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_5379_nat_Ocase__distrib,axiom,
    ! [H: $o > option_num,F12: $o,F23: nat > $o,Nat: nat] :
      ( ( H @ ( case_nat_o @ F12 @ F23 @ Nat ) )
      = ( case_nat_option_num @ ( H @ F12 )
        @ ^ [X4: nat] : ( H @ ( F23 @ X4 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_5380_nat_Ocase__distrib,axiom,
    ! [H: $o > $o,F12: $o,F23: nat > $o,Nat: nat] :
      ( ( H @ ( case_nat_o @ F12 @ F23 @ Nat ) )
      = ( case_nat_o @ ( H @ F12 )
        @ ^ [X4: nat] : ( H @ ( F23 @ X4 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_5381_nat_Ocase__distrib,axiom,
    ! [H: $o > nat,F12: $o,F23: nat > $o,Nat: nat] :
      ( ( H @ ( case_nat_o @ F12 @ F23 @ Nat ) )
      = ( case_nat_nat @ ( H @ F12 )
        @ ^ [X4: nat] : ( H @ ( F23 @ X4 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_5382_nat_Ocase__distrib,axiom,
    ! [H: nat > option_num,F12: nat,F23: nat > nat,Nat: nat] :
      ( ( H @ ( case_nat_nat @ F12 @ F23 @ Nat ) )
      = ( case_nat_option_num @ ( H @ F12 )
        @ ^ [X4: nat] : ( H @ ( F23 @ X4 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_5383_nat_Ocase__distrib,axiom,
    ! [H: nat > $o,F12: nat,F23: nat > nat,Nat: nat] :
      ( ( H @ ( case_nat_nat @ F12 @ F23 @ Nat ) )
      = ( case_nat_o @ ( H @ F12 )
        @ ^ [X4: nat] : ( H @ ( F23 @ X4 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_5384_nat_Ocase__distrib,axiom,
    ! [H: nat > nat,F12: nat,F23: nat > nat,Nat: nat] :
      ( ( H @ ( case_nat_nat @ F12 @ F23 @ Nat ) )
      = ( case_nat_nat @ ( H @ F12 )
        @ ^ [X4: nat] : ( H @ ( F23 @ X4 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_5385_num_Ocase__distrib,axiom,
    ! [H: option_num > option_num,F12: option_num,F23: num > option_num,F32: num > option_num,Num: num] :
      ( ( H @ ( case_num_option_num @ F12 @ F23 @ F32 @ Num ) )
      = ( case_num_option_num @ ( H @ F12 )
        @ ^ [X4: num] : ( H @ ( F23 @ X4 ) )
        @ ^ [X4: num] : ( H @ ( F32 @ X4 ) )
        @ Num ) ) ).

% num.case_distrib
thf(fact_5386_old_Onat_Osimps_I5_J,axiom,
    ! [F12: option_num,F23: nat > option_num,X2: nat] :
      ( ( case_nat_option_num @ F12 @ F23 @ ( suc @ X2 ) )
      = ( F23 @ X2 ) ) ).

% old.nat.simps(5)
thf(fact_5387_old_Onat_Osimps_I5_J,axiom,
    ! [F12: $o,F23: nat > $o,X2: nat] :
      ( ( case_nat_o @ F12 @ F23 @ ( suc @ X2 ) )
      = ( F23 @ X2 ) ) ).

% old.nat.simps(5)
thf(fact_5388_old_Onat_Osimps_I5_J,axiom,
    ! [F12: nat,F23: nat > nat,X2: nat] :
      ( ( case_nat_nat @ F12 @ F23 @ ( suc @ X2 ) )
      = ( F23 @ X2 ) ) ).

% old.nat.simps(5)
thf(fact_5389_old_Onat_Osimps_I4_J,axiom,
    ! [F12: option_num,F23: nat > option_num] :
      ( ( case_nat_option_num @ F12 @ F23 @ zero_zero_nat )
      = F12 ) ).

% old.nat.simps(4)
thf(fact_5390_old_Onat_Osimps_I4_J,axiom,
    ! [F12: $o,F23: nat > $o] :
      ( ( case_nat_o @ F12 @ F23 @ zero_zero_nat )
      = F12 ) ).

% old.nat.simps(4)
thf(fact_5391_old_Onat_Osimps_I4_J,axiom,
    ! [F12: nat,F23: nat > nat] :
      ( ( case_nat_nat @ F12 @ F23 @ zero_zero_nat )
      = F12 ) ).

% old.nat.simps(4)
thf(fact_5392_verit__eq__simplify_I17_J,axiom,
    ! [F12: option_num,F23: num > option_num,F32: num > option_num,X2: num] :
      ( ( case_num_option_num @ F12 @ F23 @ F32 @ ( bit0 @ X2 ) )
      = ( F23 @ X2 ) ) ).

% verit_eq_simplify(17)
thf(fact_5393_verit__eq__simplify_I16_J,axiom,
    ! [F12: option_num,F23: num > option_num,F32: num > option_num] :
      ( ( case_num_option_num @ F12 @ F23 @ F32 @ one )
      = F12 ) ).

% verit_eq_simplify(16)
thf(fact_5394_verit__eq__simplify_I18_J,axiom,
    ! [F12: option_num,F23: num > option_num,F32: num > option_num,X32: num] :
      ( ( case_num_option_num @ F12 @ F23 @ F32 @ ( bit1 @ X32 ) )
      = ( F32 @ X32 ) ) ).

% verit_eq_simplify(18)
thf(fact_5395_less__mask,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ord_less_nat @ N @ ( bit_se2002935070580805687sk_nat @ N ) ) ) ).

% less_mask
thf(fact_5396_divmod__abs__code_I5_J,axiom,
    ! [J: code_integer] :
      ( ( code_divmod_abs @ J @ zero_z3403309356797280102nteger )
      = ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ ( abs_abs_Code_integer @ J ) ) ) ).

% divmod_abs_code(5)
thf(fact_5397_divmod__abs__code_I6_J,axiom,
    ! [J: code_integer] :
      ( ( code_divmod_abs @ zero_z3403309356797280102nteger @ J )
      = ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger ) ) ).

% divmod_abs_code(6)
thf(fact_5398_Nitpick_Ocase__nat__unfold,axiom,
    ( case_nat_option_num
    = ( ^ [X4: option_num,F2: nat > option_num,N5: nat] : ( if_option_num @ ( N5 = zero_zero_nat ) @ X4 @ ( F2 @ ( minus_minus_nat @ N5 @ one_one_nat ) ) ) ) ) ).

% Nitpick.case_nat_unfold
thf(fact_5399_Nitpick_Ocase__nat__unfold,axiom,
    ( case_nat_o
    = ( ^ [X4: $o,F2: nat > $o,N5: nat] :
          ( ( ( N5 = zero_zero_nat )
           => X4 )
          & ( ( N5 != zero_zero_nat )
           => ( F2 @ ( minus_minus_nat @ N5 @ one_one_nat ) ) ) ) ) ) ).

% Nitpick.case_nat_unfold
thf(fact_5400_Nitpick_Ocase__nat__unfold,axiom,
    ( case_nat_nat
    = ( ^ [X4: nat,F2: nat > nat,N5: nat] : ( if_nat @ ( N5 = zero_zero_nat ) @ X4 @ ( F2 @ ( minus_minus_nat @ N5 @ one_one_nat ) ) ) ) ) ).

% Nitpick.case_nat_unfold
thf(fact_5401_semiring__bit__operations__class_Oeven__mask__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se2119862282449309892nteger @ N ) )
      = ( N = zero_zero_nat ) ) ).

% semiring_bit_operations_class.even_mask_iff
thf(fact_5402_semiring__bit__operations__class_Oeven__mask__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se2002935070580805687sk_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% semiring_bit_operations_class.even_mask_iff
thf(fact_5403_semiring__bit__operations__class_Oeven__mask__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se2000444600071755411sk_int @ N ) )
      = ( N = zero_zero_nat ) ) ).

% semiring_bit_operations_class.even_mask_iff
thf(fact_5404_divmod__abs__def,axiom,
    ( code_divmod_abs
    = ( ^ [K3: code_integer,L4: code_integer] : ( produc1086072967326762835nteger @ ( divide6298287555418463151nteger @ ( abs_abs_Code_integer @ K3 ) @ ( abs_abs_Code_integer @ L4 ) ) @ ( modulo364778990260209775nteger @ ( abs_abs_Code_integer @ K3 ) @ ( abs_abs_Code_integer @ L4 ) ) ) ) ) ).

% divmod_abs_def
thf(fact_5405_mask__half__int,axiom,
    ! [N: nat] :
      ( ( divide_divide_int @ ( bit_se2000444600071755411sk_int @ N ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
      = ( bit_se2000444600071755411sk_int @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ).

% mask_half_int
thf(fact_5406_mask__nat__def,axiom,
    ( bit_se2002935070580805687sk_nat
    = ( ^ [N5: nat] : ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N5 ) @ one_one_nat ) ) ) ).

% mask_nat_def
thf(fact_5407_mask__eq__exp__minus__1,axiom,
    ( bit_se943457434206027407atural
    = ( ^ [N5: nat] : ( minus_7197305767214868737atural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N5 ) @ one_one_Code_natural ) ) ) ).

% mask_eq_exp_minus_1
thf(fact_5408_mask__eq__exp__minus__1,axiom,
    ( bit_se2119862282449309892nteger
    = ( ^ [N5: nat] : ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N5 ) @ one_one_Code_integer ) ) ) ).

% mask_eq_exp_minus_1
thf(fact_5409_mask__eq__exp__minus__1,axiom,
    ( bit_se2002935070580805687sk_nat
    = ( ^ [N5: nat] : ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N5 ) @ one_one_nat ) ) ) ).

% mask_eq_exp_minus_1
thf(fact_5410_mask__eq__exp__minus__1,axiom,
    ( bit_se2000444600071755411sk_int
    = ( ^ [N5: nat] : ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N5 ) @ one_one_int ) ) ) ).

% mask_eq_exp_minus_1
thf(fact_5411_divmod__integer__def,axiom,
    ( code_divmod_integer
    = ( ^ [K3: code_integer,L4: code_integer] : ( produc1086072967326762835nteger @ ( divide6298287555418463151nteger @ K3 @ L4 ) @ ( modulo364778990260209775nteger @ K3 @ L4 ) ) ) ) ).

% divmod_integer_def
thf(fact_5412_nat__of__integer__code,axiom,
    ( code_nat_of_integer
    = ( ^ [K3: code_integer] :
          ( if_nat @ ( ord_le3102999989581377725nteger @ K3 @ zero_z3403309356797280102nteger ) @ zero_zero_nat
          @ ( produc1555791787009142072er_nat
            @ ^ [L4: code_integer,J3: code_integer] : ( if_nat @ ( J3 = zero_z3403309356797280102nteger ) @ ( plus_plus_nat @ ( code_nat_of_integer @ L4 ) @ ( code_nat_of_integer @ L4 ) ) @ ( plus_plus_nat @ ( plus_plus_nat @ ( code_nat_of_integer @ L4 ) @ ( code_nat_of_integer @ L4 ) ) @ one_one_nat ) )
            @ ( code_divmod_integer @ K3 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% nat_of_integer_code
thf(fact_5413_divmod__integer__code,axiom,
    ( code_divmod_integer
    = ( ^ [K3: code_integer,L4: code_integer] :
          ( if_Pro6119634080678213985nteger @ ( K3 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger )
          @ ( if_Pro6119634080678213985nteger @ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ L4 )
            @ ( if_Pro6119634080678213985nteger @ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ K3 ) @ ( code_divmod_abs @ K3 @ L4 )
              @ ( produc6916734918728496179nteger
                @ ^ [R4: code_integer,S2: code_integer] : ( if_Pro6119634080678213985nteger @ ( S2 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( uminus1351360451143612070nteger @ R4 ) @ zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R4 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ L4 @ S2 ) ) )
                @ ( code_divmod_abs @ K3 @ L4 ) ) )
            @ ( if_Pro6119634080678213985nteger @ ( L4 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ K3 )
              @ ( produc6499014454317279255nteger @ uminus1351360451143612070nteger
                @ ( if_Pro6119634080678213985nteger @ ( ord_le6747313008572928689nteger @ K3 @ zero_z3403309356797280102nteger ) @ ( code_divmod_abs @ K3 @ L4 )
                  @ ( produc6916734918728496179nteger
                    @ ^ [R4: code_integer,S2: code_integer] : ( if_Pro6119634080678213985nteger @ ( S2 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( uminus1351360451143612070nteger @ R4 ) @ zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R4 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ L4 ) @ S2 ) ) )
                    @ ( code_divmod_abs @ K3 @ L4 ) ) ) ) ) ) ) ) ) ).

% divmod_integer_code
thf(fact_5414_divmod__integer__eq__cases,axiom,
    ( code_divmod_integer
    = ( ^ [K3: code_integer,L4: code_integer] :
          ( if_Pro6119634080678213985nteger @ ( K3 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger )
          @ ( if_Pro6119634080678213985nteger @ ( L4 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ K3 )
            @ ( comp_C1593894019821074884nteger @ ( comp_C8797469213163452608nteger @ produc6499014454317279255nteger @ times_3573771949741848930nteger ) @ sgn_sgn_Code_integer @ L4
              @ ( if_Pro6119634080678213985nteger
                @ ( ( sgn_sgn_Code_integer @ K3 )
                  = ( sgn_sgn_Code_integer @ L4 ) )
                @ ( code_divmod_abs @ K3 @ L4 )
                @ ( produc6916734918728496179nteger
                  @ ^ [R4: code_integer,S2: code_integer] : ( if_Pro6119634080678213985nteger @ ( S2 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( uminus1351360451143612070nteger @ R4 ) @ zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R4 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ ( abs_abs_Code_integer @ L4 ) @ S2 ) ) )
                  @ ( code_divmod_abs @ K3 @ L4 ) ) ) ) ) ) ) ) ).

% divmod_integer_eq_cases
thf(fact_5415_int__of__integer__code,axiom,
    ( code_int_of_integer
    = ( ^ [K3: code_integer] :
          ( if_int @ ( ord_le6747313008572928689nteger @ K3 @ zero_z3403309356797280102nteger ) @ ( uminus_uminus_int @ ( code_int_of_integer @ ( uminus1351360451143612070nteger @ K3 ) ) )
          @ ( if_int @ ( K3 = zero_z3403309356797280102nteger ) @ zero_zero_int
            @ ( produc1553301316500091796er_int
              @ ^ [L4: code_integer,J3: code_integer] : ( if_int @ ( J3 = zero_z3403309356797280102nteger ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( code_int_of_integer @ L4 ) ) @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( code_int_of_integer @ L4 ) ) @ one_one_int ) )
              @ ( code_divmod_integer @ K3 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% int_of_integer_code
thf(fact_5416_and__minus__numerals_I7_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) @ ( numeral_numeral_int @ M ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bitM @ N ) ) ) ) ).

% and_minus_numerals(7)
thf(fact_5417_and__minus__numerals_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bitM @ N ) ) ) ) ).

% and_minus_numerals(3)
thf(fact_5418_and__minus__numerals_I8_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) @ ( numeral_numeral_int @ M ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bit0 @ N ) ) ) ) ).

% and_minus_numerals(8)
thf(fact_5419_and__zero__eq,axiom,
    ! [A: code_integer] :
      ( ( bit_se3949692690581998587nteger @ A @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% and_zero_eq
thf(fact_5420_and__zero__eq,axiom,
    ! [A: code_natural] :
      ( ( bit_se2773287842338716102atural @ A @ zero_z2226904508553997617atural )
      = zero_z2226904508553997617atural ) ).

% and_zero_eq
thf(fact_5421_and__zero__eq,axiom,
    ! [A: int] :
      ( ( bit_se725231765392027082nd_int @ A @ zero_zero_int )
      = zero_zero_int ) ).

% and_zero_eq
thf(fact_5422_and__zero__eq,axiom,
    ! [A: nat] :
      ( ( bit_se727722235901077358nd_nat @ A @ zero_zero_nat )
      = zero_zero_nat ) ).

% and_zero_eq
thf(fact_5423_zero__and__eq,axiom,
    ! [A: code_integer] :
      ( ( bit_se3949692690581998587nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% zero_and_eq
thf(fact_5424_zero__and__eq,axiom,
    ! [A: code_natural] :
      ( ( bit_se2773287842338716102atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% zero_and_eq
thf(fact_5425_zero__and__eq,axiom,
    ! [A: int] :
      ( ( bit_se725231765392027082nd_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% zero_and_eq
thf(fact_5426_zero__and__eq,axiom,
    ! [A: nat] :
      ( ( bit_se727722235901077358nd_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% zero_and_eq
thf(fact_5427_bit_Oconj__zero__left,axiom,
    ! [X: code_integer] :
      ( ( bit_se3949692690581998587nteger @ zero_z3403309356797280102nteger @ X )
      = zero_z3403309356797280102nteger ) ).

% bit.conj_zero_left
thf(fact_5428_bit_Oconj__zero__left,axiom,
    ! [X: int] :
      ( ( bit_se725231765392027082nd_int @ zero_zero_int @ X )
      = zero_zero_int ) ).

% bit.conj_zero_left
thf(fact_5429_bit_Oconj__zero__right,axiom,
    ! [X: code_integer] :
      ( ( bit_se3949692690581998587nteger @ X @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% bit.conj_zero_right
thf(fact_5430_bit_Oconj__zero__right,axiom,
    ! [X: int] :
      ( ( bit_se725231765392027082nd_int @ X @ zero_zero_int )
      = zero_zero_int ) ).

% bit.conj_zero_right
thf(fact_5431_apsnd__conv,axiom,
    ! [F: produc8923325533196201883nteger > produc8923325533196201883nteger,X: code_integer > option6357759511663192854e_term,Y3: produc8923325533196201883nteger] :
      ( ( produc1584323072462815568e_term @ F @ ( produc6137756002093451184nteger @ X @ Y3 ) )
      = ( produc6137756002093451184nteger @ X @ ( F @ Y3 ) ) ) ).

% apsnd_conv
thf(fact_5432_apsnd__conv,axiom,
    ! [F: produc7822875418678951345atural > produc7822875418678951345atural,X: produc4972180933644002618e_term > option6357759511663192854e_term,Y3: produc7822875418678951345atural] :
      ( ( produc2824789715873180845e_term @ F @ ( produc3831813291587773865atural @ X @ Y3 ) )
      = ( produc3831813291587773865atural @ X @ ( F @ Y3 ) ) ) ).

% apsnd_conv
thf(fact_5433_apsnd__conv,axiom,
    ! [F: produc8923325533196201883nteger > produc8923325533196201883nteger,X: produc6241069584506657477e_term > option6357759511663192854e_term,Y3: produc8923325533196201883nteger] :
      ( ( produc717174245515237944e_term @ F @ ( produc8603105652947943368nteger @ X @ Y3 ) )
      = ( produc8603105652947943368nteger @ X @ ( F @ Y3 ) ) ) ).

% apsnd_conv
thf(fact_5434_apsnd__conv,axiom,
    ! [F: product_prod_int_int > product_prod_int_int,X: produc8551481072490612790e_term > option6357759511663192854e_term,Y3: product_prod_int_int] :
      ( ( produc4973430039190721449e_term @ F @ ( produc5700946648718959541nt_int @ X @ Y3 ) )
      = ( produc5700946648718959541nt_int @ X @ ( F @ Y3 ) ) ) ).

% apsnd_conv
thf(fact_5435_apsnd__conv,axiom,
    ! [F: product_prod_int_int > product_prod_int_int,X: int > option6357759511663192854e_term,Y3: product_prod_int_int] :
      ( ( produc7011684061226097695e_term @ F @ ( produc4305682042979456191nt_int @ X @ Y3 ) )
      = ( produc4305682042979456191nt_int @ X @ ( F @ Y3 ) ) ) ).

% apsnd_conv
thf(fact_5436_apsnd__conv,axiom,
    ! [F: code_integer > code_integer,X: code_integer,Y3: code_integer] :
      ( ( produc6499014454317279255nteger @ F @ ( produc1086072967326762835nteger @ X @ Y3 ) )
      = ( produc1086072967326762835nteger @ X @ ( F @ Y3 ) ) ) ).

% apsnd_conv
thf(fact_5437_bit_Oconj__one__right,axiom,
    ! [X: code_integer] :
      ( ( bit_se3949692690581998587nteger @ X @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = X ) ).

% bit.conj_one_right
thf(fact_5438_bit_Oconj__one__right,axiom,
    ! [X: int] :
      ( ( bit_se725231765392027082nd_int @ X @ ( uminus_uminus_int @ one_one_int ) )
      = X ) ).

% bit.conj_one_right
thf(fact_5439_and_Oright__neutral,axiom,
    ! [A: code_integer] :
      ( ( bit_se3949692690581998587nteger @ A @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = A ) ).

% and.right_neutral
thf(fact_5440_and_Oright__neutral,axiom,
    ! [A: int] :
      ( ( bit_se725231765392027082nd_int @ A @ ( uminus_uminus_int @ one_one_int ) )
      = A ) ).

% and.right_neutral
thf(fact_5441_and_Oleft__neutral,axiom,
    ! [A: code_integer] :
      ( ( bit_se3949692690581998587nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ A )
      = A ) ).

% and.left_neutral
thf(fact_5442_and_Oleft__neutral,axiom,
    ! [A: int] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ one_one_int ) @ A )
      = A ) ).

% and.left_neutral
thf(fact_5443_and__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se2773287842338716102atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ ( bit1 @ Y3 ) ) )
      = one_one_Code_natural ) ).

% and_numerals(2)
thf(fact_5444_and__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se3949692690581998587nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ ( bit1 @ Y3 ) ) )
      = one_one_Code_integer ) ).

% and_numerals(2)
thf(fact_5445_and__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ ( numeral_numeral_int @ ( bit1 @ Y3 ) ) )
      = one_one_int ) ).

% and_numerals(2)
thf(fact_5446_and__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se727722235901077358nd_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) )
      = one_one_nat ) ).

% and_numerals(2)
thf(fact_5447_and__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se2773287842338716102atural @ ( numera5444537566228673987atural @ ( bit1 @ X ) ) @ one_one_Code_natural )
      = one_one_Code_natural ) ).

% and_numerals(8)
thf(fact_5448_and__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se3949692690581998587nteger @ ( numera6620942414471956472nteger @ ( bit1 @ X ) ) @ one_one_Code_integer )
      = one_one_Code_integer ) ).

% and_numerals(8)
thf(fact_5449_and__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit1 @ X ) ) @ one_one_int )
      = one_one_int ) ).

% and_numerals(8)
thf(fact_5450_and__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ one_one_nat )
      = one_one_nat ) ).

% and_numerals(8)
thf(fact_5451_and__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se2773287842338716102atural @ ( numera5444537566228673987atural @ ( bit0 @ X ) ) @ one_one_Code_natural )
      = zero_z2226904508553997617atural ) ).

% and_numerals(5)
thf(fact_5452_and__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se3949692690581998587nteger @ ( numera6620942414471956472nteger @ ( bit0 @ X ) ) @ one_one_Code_integer )
      = zero_z3403309356797280102nteger ) ).

% and_numerals(5)
thf(fact_5453_and__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit0 @ X ) ) @ one_one_int )
      = zero_zero_int ) ).

% and_numerals(5)
thf(fact_5454_and__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ one_one_nat )
      = zero_zero_nat ) ).

% and_numerals(5)
thf(fact_5455_and__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se2773287842338716102atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ Y3 ) ) )
      = zero_z2226904508553997617atural ) ).

% and_numerals(1)
thf(fact_5456_and__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se3949692690581998587nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ Y3 ) ) )
      = zero_z3403309356797280102nteger ) ).

% and_numerals(1)
thf(fact_5457_and__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ ( numeral_numeral_int @ ( bit0 @ Y3 ) ) )
      = zero_zero_int ) ).

% and_numerals(1)
thf(fact_5458_and__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se727722235901077358nd_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit0 @ Y3 ) ) )
      = zero_zero_nat ) ).

% and_numerals(1)
thf(fact_5459_and__numerals_I7_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se2773287842338716102atural @ ( numera5444537566228673987atural @ ( bit1 @ X ) ) @ ( numera5444537566228673987atural @ ( bit1 @ Y3 ) ) )
      = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se2773287842338716102atural @ ( numera5444537566228673987atural @ X ) @ ( numera5444537566228673987atural @ Y3 ) ) ) ) ) ).

% and_numerals(7)
thf(fact_5460_and__numerals_I7_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se3949692690581998587nteger @ ( numera6620942414471956472nteger @ ( bit1 @ X ) ) @ ( numera6620942414471956472nteger @ ( bit1 @ Y3 ) ) )
      = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se3949692690581998587nteger @ ( numera6620942414471956472nteger @ X ) @ ( numera6620942414471956472nteger @ Y3 ) ) ) ) ) ).

% and_numerals(7)
thf(fact_5461_and__numerals_I7_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit1 @ X ) ) @ ( numeral_numeral_int @ ( bit1 @ Y3 ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ X ) @ ( numeral_numeral_int @ Y3 ) ) ) ) ) ).

% and_numerals(7)
thf(fact_5462_and__numerals_I7_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) )
      = ( plus_plus_nat @ one_one_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ X ) @ ( numeral_numeral_nat @ Y3 ) ) ) ) ) ).

% and_numerals(7)
thf(fact_5463_and__minus__numerals_I4_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bit0 @ N ) ) ) ) ).

% and_minus_numerals(4)
thf(fact_5464_apsnd__compose,axiom,
    ! [F: code_integer > code_integer,G: code_integer > code_integer,X: produc8923325533196201883nteger] :
      ( ( produc6499014454317279255nteger @ F @ ( produc6499014454317279255nteger @ G @ X ) )
      = ( produc6499014454317279255nteger @ ( comp_C7449957260575251196nteger @ F @ G ) @ X ) ) ).

% apsnd_compose
thf(fact_5465_and__eq__minus__1__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( bit_se3949692690581998587nteger @ A @ B )
        = ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( ( A
          = ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
        & ( B
          = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ) ) ).

% and_eq_minus_1_iff
thf(fact_5466_and__eq__minus__1__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( bit_se725231765392027082nd_int @ A @ B )
        = ( uminus_uminus_int @ one_one_int ) )
      = ( ( A
          = ( uminus_uminus_int @ one_one_int ) )
        & ( B
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% and_eq_minus_1_iff
thf(fact_5467_nat_Odisc__eq__case_I2_J,axiom,
    ! [Nat: nat] :
      ( ( Nat != zero_zero_nat )
      = ( case_nat_o @ $false
        @ ^ [Uu: nat] : $true
        @ Nat ) ) ).

% nat.disc_eq_case(2)
thf(fact_5468_nat_Odisc__eq__case_I1_J,axiom,
    ! [Nat: nat] :
      ( ( Nat = zero_zero_nat )
      = ( case_nat_o @ $true
        @ ^ [Uu: nat] : $false
        @ Nat ) ) ).

% nat.disc_eq_case(1)
thf(fact_5469_less__eq__nat_Osimps_I2_J,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
      = ( case_nat_o @ $false @ ( ord_less_eq_nat @ M ) @ N ) ) ).

% less_eq_nat.simps(2)
thf(fact_5470_one__and__eq,axiom,
    ! [A: code_natural] :
      ( ( bit_se2773287842338716102atural @ one_one_Code_natural @ A )
      = ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ).

% one_and_eq
thf(fact_5471_one__and__eq,axiom,
    ! [A: code_integer] :
      ( ( bit_se3949692690581998587nteger @ one_one_Code_integer @ A )
      = ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ).

% one_and_eq
thf(fact_5472_one__and__eq,axiom,
    ! [A: int] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ A )
      = ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% one_and_eq
thf(fact_5473_one__and__eq,axiom,
    ! [A: nat] :
      ( ( bit_se727722235901077358nd_nat @ one_one_nat @ A )
      = ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% one_and_eq
thf(fact_5474_and__one__eq,axiom,
    ! [A: code_natural] :
      ( ( bit_se2773287842338716102atural @ A @ one_one_Code_natural )
      = ( modulo8411746178871703098atural @ A @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ).

% and_one_eq
thf(fact_5475_and__one__eq,axiom,
    ! [A: code_integer] :
      ( ( bit_se3949692690581998587nteger @ A @ one_one_Code_integer )
      = ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ).

% and_one_eq
thf(fact_5476_and__one__eq,axiom,
    ! [A: int] :
      ( ( bit_se725231765392027082nd_int @ A @ one_one_int )
      = ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% and_one_eq
thf(fact_5477_and__one__eq,axiom,
    ! [A: nat] :
      ( ( bit_se727722235901077358nd_nat @ A @ one_one_nat )
      = ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% and_one_eq
thf(fact_5478_diff__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ M @ ( suc @ N ) )
      = ( case_nat_nat @ zero_zero_nat
        @ ^ [K3: nat] : K3
        @ ( minus_minus_nat @ M @ N ) ) ) ).

% diff_Suc
thf(fact_5479_integer__of__num_I3_J,axiom,
    ! [N: num] :
      ( ( code_integer_of_num @ ( bit1 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( code_integer_of_num @ N ) @ ( code_integer_of_num @ N ) ) @ one_one_Code_integer ) ) ).

% integer_of_num(3)
thf(fact_5480_nat_Osplit__sels_I1_J,axiom,
    ! [P: option_num > $o,F12: option_num,F23: nat > option_num,Nat: nat] :
      ( ( P @ ( case_nat_option_num @ F12 @ F23 @ Nat ) )
      = ( ( ( Nat = zero_zero_nat )
         => ( P @ F12 ) )
        & ( ( Nat
            = ( suc @ ( pred @ Nat ) ) )
         => ( P @ ( F23 @ ( pred @ Nat ) ) ) ) ) ) ).

% nat.split_sels(1)
thf(fact_5481_nat_Osplit__sels_I1_J,axiom,
    ! [P: $o > $o,F12: $o,F23: nat > $o,Nat: nat] :
      ( ( P @ ( case_nat_o @ F12 @ F23 @ Nat ) )
      = ( ( ( Nat = zero_zero_nat )
         => ( P @ F12 ) )
        & ( ( Nat
            = ( suc @ ( pred @ Nat ) ) )
         => ( P @ ( F23 @ ( pred @ Nat ) ) ) ) ) ) ).

% nat.split_sels(1)
thf(fact_5482_nat_Osplit__sels_I1_J,axiom,
    ! [P: nat > $o,F12: nat,F23: nat > nat,Nat: nat] :
      ( ( P @ ( case_nat_nat @ F12 @ F23 @ Nat ) )
      = ( ( ( Nat = zero_zero_nat )
         => ( P @ F12 ) )
        & ( ( Nat
            = ( suc @ ( pred @ Nat ) ) )
         => ( P @ ( F23 @ ( pred @ Nat ) ) ) ) ) ) ).

% nat.split_sels(1)
thf(fact_5483_nat_Osplit__sels_I2_J,axiom,
    ! [P: option_num > $o,F12: option_num,F23: nat > option_num,Nat: nat] :
      ( ( P @ ( case_nat_option_num @ F12 @ F23 @ Nat ) )
      = ( ~ ( ( ( Nat = zero_zero_nat )
              & ~ ( P @ F12 ) )
            | ( ( Nat
                = ( suc @ ( pred @ Nat ) ) )
              & ~ ( P @ ( F23 @ ( pred @ Nat ) ) ) ) ) ) ) ).

% nat.split_sels(2)
thf(fact_5484_nat_Osplit__sels_I2_J,axiom,
    ! [P: $o > $o,F12: $o,F23: nat > $o,Nat: nat] :
      ( ( P @ ( case_nat_o @ F12 @ F23 @ Nat ) )
      = ( ~ ( ( ( Nat = zero_zero_nat )
              & ~ ( P @ F12 ) )
            | ( ( Nat
                = ( suc @ ( pred @ Nat ) ) )
              & ~ ( P @ ( F23 @ ( pred @ Nat ) ) ) ) ) ) ) ).

% nat.split_sels(2)
thf(fact_5485_nat_Osplit__sels_I2_J,axiom,
    ! [P: nat > $o,F12: nat,F23: nat > nat,Nat: nat] :
      ( ( P @ ( case_nat_nat @ F12 @ F23 @ Nat ) )
      = ( ~ ( ( ( Nat = zero_zero_nat )
              & ~ ( P @ F12 ) )
            | ( ( Nat
                = ( suc @ ( pred @ Nat ) ) )
              & ~ ( P @ ( F23 @ ( pred @ Nat ) ) ) ) ) ) ) ).

% nat.split_sels(2)
thf(fact_5486_mask__eq__sum__exp__nat,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ ( suc @ zero_zero_nat ) )
      = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        @ ( collect_nat
          @ ^ [Q4: nat] : ( ord_less_nat @ Q4 @ N ) ) ) ) ).

% mask_eq_sum_exp_nat
thf(fact_5487_Suc__0__div__numeral,axiom,
    ! [K: num] :
      ( ( divide_divide_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ K ) )
      = ( product_fst_nat_nat @ ( unique5055182867167087721od_nat @ one @ K ) ) ) ).

% Suc_0_div_numeral
thf(fact_5488_Ints__sum,axiom,
    ! [A3: set_se7855581050983116737at_nat,F: set_Pr1261947904930325089at_nat > int] :
      ( ! [X5: set_Pr1261947904930325089at_nat] :
          ( ( member2643936169264416010at_nat @ X5 @ A3 )
         => ( member_int @ ( F @ X5 ) @ ring_1_Ints_int ) )
     => ( member_int @ ( groups178575644746855891at_int @ F @ A3 ) @ ring_1_Ints_int ) ) ).

% Ints_sum
thf(fact_5489_Ints__sum,axiom,
    ! [A3: set_se6260736226359567993nt_int,F: set_Pr958786334691620121nt_int > int] :
      ( ! [X5: set_Pr958786334691620121nt_int] :
          ( ( member2340774599025711042nt_int @ X5 @ A3 )
         => ( member_int @ ( F @ X5 ) @ ring_1_Ints_int ) )
     => ( member_int @ ( groups182716853052024971nt_int @ F @ A3 ) @ ring_1_Ints_int ) ) ).

% Ints_sum
thf(fact_5490_Ints__sum,axiom,
    ! [A3: set_set_nat,F: set_nat > int] :
      ( ! [X5: set_nat] :
          ( ( member_set_nat @ X5 @ A3 )
         => ( member_int @ ( F @ X5 ) @ ring_1_Ints_int ) )
     => ( member_int @ ( groups8292507037921071086at_int @ F @ A3 ) @ ring_1_Ints_int ) ) ).

% Ints_sum
thf(fact_5491_Ints__sum,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( member_int @ ( F @ X5 ) @ ring_1_Ints_int ) )
     => ( member_int @ ( groups3539618377306564664at_int @ F @ A3 ) @ ring_1_Ints_int ) ) ).

% Ints_sum
thf(fact_5492_Ints__sum,axiom,
    ! [A3: set_int,F: int > int] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( member_int @ ( F @ X5 ) @ ring_1_Ints_int ) )
     => ( member_int @ ( groups4538972089207619220nt_int @ F @ A3 ) @ ring_1_Ints_int ) ) ).

% Ints_sum
thf(fact_5493_fst__comp__apsnd,axiom,
    ! [F: code_integer > code_integer] :
      ( ( comp_P3428181540658402820nteger @ produc8508995932063986495nteger @ ( produc6499014454317279255nteger @ F ) )
      = produc8508995932063986495nteger ) ).

% fst_comp_apsnd
thf(fact_5494_fst__comp__apsnd,axiom,
    ! [F: nat > nat] :
      ( ( comp_P1567445206330693457at_nat @ product_fst_nat_nat @ ( produc3094765310956027504at_nat @ F ) )
      = product_fst_nat_nat ) ).

% fst_comp_apsnd
thf(fact_5495_fst__comp__apsnd,axiom,
    ! [F: int > int] :
      ( ( comp_P5356232565778667509nt_int @ product_fst_int_int @ ( produc4463282112584876420nt_int @ F ) )
      = product_fst_int_int ) ).

% fst_comp_apsnd
thf(fact_5496_fst__apsnd,axiom,
    ! [F: code_integer > code_integer,X: produc8923325533196201883nteger] :
      ( ( produc8508995932063986495nteger @ ( produc6499014454317279255nteger @ F @ X ) )
      = ( produc8508995932063986495nteger @ X ) ) ).

% fst_apsnd
thf(fact_5497_fst__apsnd,axiom,
    ! [F: nat > nat,X: product_prod_nat_nat] :
      ( ( product_fst_nat_nat @ ( produc3094765310956027504at_nat @ F @ X ) )
      = ( product_fst_nat_nat @ X ) ) ).

% fst_apsnd
thf(fact_5498_fst__apsnd,axiom,
    ! [F: int > int,X: product_prod_int_int] :
      ( ( product_fst_int_int @ ( produc4463282112584876420nt_int @ F @ X ) )
      = ( product_fst_int_int @ X ) ) ).

% fst_apsnd
thf(fact_5499_of__int__sum,axiom,
    ! [F: int > int,A3: set_int] :
      ( ( ring_1_of_int_rat @ ( groups4538972089207619220nt_int @ F @ A3 ) )
      = ( groups3906332499630173760nt_rat
        @ ^ [X4: int] : ( ring_1_of_int_rat @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_int_sum
thf(fact_5500_of__int__sum,axiom,
    ! [F: int > int,A3: set_int] :
      ( ( ring_1_of_int_int @ ( groups4538972089207619220nt_int @ F @ A3 ) )
      = ( groups4538972089207619220nt_int
        @ ^ [X4: int] : ( ring_1_of_int_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_int_sum
thf(fact_5501_of__nat__sum,axiom,
    ! [F: int > nat,A3: set_int] :
      ( ( semiri1314217659103216013at_int @ ( groups4541462559716669496nt_nat @ F @ A3 ) )
      = ( groups4538972089207619220nt_int
        @ ^ [X4: int] : ( semiri1314217659103216013at_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_nat_sum
thf(fact_5502_of__nat__sum,axiom,
    ! [F: nat > nat,A3: set_nat] :
      ( ( semiri1314217659103216013at_int @ ( groups3542108847815614940at_nat @ F @ A3 ) )
      = ( groups3539618377306564664at_int
        @ ^ [X4: nat] : ( semiri1314217659103216013at_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_nat_sum
thf(fact_5503_of__nat__sum,axiom,
    ! [F: nat > nat,A3: set_nat] :
      ( ( semiri1316708129612266289at_nat @ ( groups3542108847815614940at_nat @ F @ A3 ) )
      = ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : ( semiri1316708129612266289at_nat @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_nat_sum
thf(fact_5504_and__nat__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se727722235901077358nd_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit0 @ Y3 ) ) )
      = zero_zero_nat ) ).

% and_nat_numerals(1)
thf(fact_5505_and__nat__numerals_I3_J,axiom,
    ! [X: num] :
      ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = zero_zero_nat ) ).

% and_nat_numerals(3)
thf(fact_5506_and__nat__numerals_I4_J,axiom,
    ! [X: num] :
      ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = one_one_nat ) ).

% and_nat_numerals(4)
thf(fact_5507_and__nat__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se727722235901077358nd_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) )
      = one_one_nat ) ).

% and_nat_numerals(2)
thf(fact_5508_and__Suc__0__eq,axiom,
    ! [N: nat] :
      ( ( bit_se727722235901077358nd_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% and_Suc_0_eq
thf(fact_5509_Suc__0__and__eq,axiom,
    ! [N: nat] :
      ( ( bit_se727722235901077358nd_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% Suc_0_and_eq
thf(fact_5510_one__div__numeral,axiom,
    ! [N: num] :
      ( ( divide_divide_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( product_fst_int_int @ ( unique5052692396658037445od_int @ one @ N ) ) ) ).

% one_div_numeral
thf(fact_5511_one__div__numeral,axiom,
    ! [N: num] :
      ( ( divide_divide_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) )
      = ( product_fst_nat_nat @ ( unique5055182867167087721od_nat @ one @ N ) ) ) ).

% one_div_numeral
thf(fact_5512_one__div__numeral,axiom,
    ! [N: num] :
      ( ( divide6298287555418463151nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ N ) )
      = ( produc8508995932063986495nteger @ ( unique3479559517661332726nteger @ one @ N ) ) ) ).

% one_div_numeral
thf(fact_5513_fstI,axiom,
    ! [X: produc8763457246119570046nteger,Y3: code_integer > option6357759511663192854e_term,Z: produc8923325533196201883nteger] :
      ( ( X
        = ( produc6137756002093451184nteger @ Y3 @ Z ) )
     => ( ( produc2702340305111172292nteger @ X )
        = Y3 ) ) ).

% fstI
thf(fact_5514_fstI,axiom,
    ! [X: produc989692990947075319atural,Y3: produc4972180933644002618e_term > option6357759511663192854e_term,Z: produc7822875418678951345atural] :
      ( ( X
        = ( produc3831813291587773865atural @ Y3 @ Z ) )
     => ( ( produc3051390257598303421atural @ X )
        = Y3 ) ) ).

% fstI
thf(fact_5515_fstI,axiom,
    ! [X: produc1908205239877642774nteger,Y3: produc6241069584506657477e_term > option6357759511663192854e_term,Z: produc8923325533196201883nteger] :
      ( ( X
        = ( produc8603105652947943368nteger @ Y3 @ Z ) )
     => ( ( produc7822682618958472924nteger @ X )
        = Y3 ) ) ).

% fstI
thf(fact_5516_fstI,axiom,
    ! [X: produc2285326912895808259nt_int,Y3: produc8551481072490612790e_term > option6357759511663192854e_term,Z: product_prod_int_int] :
      ( ( X
        = ( produc5700946648718959541nt_int @ Y3 @ Z ) )
     => ( ( produc6816164490631068361nt_int @ X )
        = Y3 ) ) ).

% fstI
thf(fact_5517_fstI,axiom,
    ! [X: produc7773217078559923341nt_int,Y3: int > option6357759511663192854e_term,Z: product_prod_int_int] :
      ( ( X
        = ( produc4305682042979456191nt_int @ Y3 @ Z ) )
     => ( ( produc6230002227079971283nt_int @ X )
        = Y3 ) ) ).

% fstI
thf(fact_5518_fstI,axiom,
    ! [X: product_prod_nat_nat,Y3: nat,Z: nat] :
      ( ( X
        = ( product_Pair_nat_nat @ Y3 @ Z ) )
     => ( ( product_fst_nat_nat @ X )
        = Y3 ) ) ).

% fstI
thf(fact_5519_fstI,axiom,
    ! [X: product_prod_int_int,Y3: int,Z: int] :
      ( ( X
        = ( product_Pair_int_int @ Y3 @ Z ) )
     => ( ( product_fst_int_int @ X )
        = Y3 ) ) ).

% fstI
thf(fact_5520_fst__eqD,axiom,
    ! [X: code_integer > option6357759511663192854e_term,Y3: produc8923325533196201883nteger,A: code_integer > option6357759511663192854e_term] :
      ( ( ( produc2702340305111172292nteger @ ( produc6137756002093451184nteger @ X @ Y3 ) )
        = A )
     => ( X = A ) ) ).

% fst_eqD
thf(fact_5521_fst__eqD,axiom,
    ! [X: produc4972180933644002618e_term > option6357759511663192854e_term,Y3: produc7822875418678951345atural,A: produc4972180933644002618e_term > option6357759511663192854e_term] :
      ( ( ( produc3051390257598303421atural @ ( produc3831813291587773865atural @ X @ Y3 ) )
        = A )
     => ( X = A ) ) ).

% fst_eqD
thf(fact_5522_fst__eqD,axiom,
    ! [X: produc6241069584506657477e_term > option6357759511663192854e_term,Y3: produc8923325533196201883nteger,A: produc6241069584506657477e_term > option6357759511663192854e_term] :
      ( ( ( produc7822682618958472924nteger @ ( produc8603105652947943368nteger @ X @ Y3 ) )
        = A )
     => ( X = A ) ) ).

% fst_eqD
thf(fact_5523_fst__eqD,axiom,
    ! [X: produc8551481072490612790e_term > option6357759511663192854e_term,Y3: product_prod_int_int,A: produc8551481072490612790e_term > option6357759511663192854e_term] :
      ( ( ( produc6816164490631068361nt_int @ ( produc5700946648718959541nt_int @ X @ Y3 ) )
        = A )
     => ( X = A ) ) ).

% fst_eqD
thf(fact_5524_fst__eqD,axiom,
    ! [X: int > option6357759511663192854e_term,Y3: product_prod_int_int,A: int > option6357759511663192854e_term] :
      ( ( ( produc6230002227079971283nt_int @ ( produc4305682042979456191nt_int @ X @ Y3 ) )
        = A )
     => ( X = A ) ) ).

% fst_eqD
thf(fact_5525_fst__eqD,axiom,
    ! [X: nat,Y3: nat,A: nat] :
      ( ( ( product_fst_nat_nat @ ( product_Pair_nat_nat @ X @ Y3 ) )
        = A )
     => ( X = A ) ) ).

% fst_eqD
thf(fact_5526_fst__eqD,axiom,
    ! [X: int,Y3: int,A: int] :
      ( ( ( product_fst_int_int @ ( product_Pair_int_int @ X @ Y3 ) )
        = A )
     => ( X = A ) ) ).

% fst_eqD
thf(fact_5527_fst__conv,axiom,
    ! [X1: code_integer > option6357759511663192854e_term,X2: produc8923325533196201883nteger] :
      ( ( produc2702340305111172292nteger @ ( produc6137756002093451184nteger @ X1 @ X2 ) )
      = X1 ) ).

% fst_conv
thf(fact_5528_fst__conv,axiom,
    ! [X1: produc4972180933644002618e_term > option6357759511663192854e_term,X2: produc7822875418678951345atural] :
      ( ( produc3051390257598303421atural @ ( produc3831813291587773865atural @ X1 @ X2 ) )
      = X1 ) ).

% fst_conv
thf(fact_5529_fst__conv,axiom,
    ! [X1: produc6241069584506657477e_term > option6357759511663192854e_term,X2: produc8923325533196201883nteger] :
      ( ( produc7822682618958472924nteger @ ( produc8603105652947943368nteger @ X1 @ X2 ) )
      = X1 ) ).

% fst_conv
thf(fact_5530_fst__conv,axiom,
    ! [X1: produc8551481072490612790e_term > option6357759511663192854e_term,X2: product_prod_int_int] :
      ( ( produc6816164490631068361nt_int @ ( produc5700946648718959541nt_int @ X1 @ X2 ) )
      = X1 ) ).

% fst_conv
thf(fact_5531_fst__conv,axiom,
    ! [X1: int > option6357759511663192854e_term,X2: product_prod_int_int] :
      ( ( produc6230002227079971283nt_int @ ( produc4305682042979456191nt_int @ X1 @ X2 ) )
      = X1 ) ).

% fst_conv
thf(fact_5532_fst__conv,axiom,
    ! [X1: nat,X2: nat] :
      ( ( product_fst_nat_nat @ ( product_Pair_nat_nat @ X1 @ X2 ) )
      = X1 ) ).

% fst_conv
thf(fact_5533_fst__conv,axiom,
    ! [X1: int,X2: int] :
      ( ( product_fst_int_int @ ( product_Pair_int_int @ X1 @ X2 ) )
      = X1 ) ).

% fst_conv
thf(fact_5534_mod__sum__eq,axiom,
    ! [F: nat > nat,A: nat,A3: set_nat] :
      ( ( modulo_modulo_nat
        @ ( groups3542108847815614940at_nat
          @ ^ [I2: nat] : ( modulo_modulo_nat @ ( F @ I2 ) @ A )
          @ A3 )
        @ A )
      = ( modulo_modulo_nat @ ( groups3542108847815614940at_nat @ F @ A3 ) @ A ) ) ).

% mod_sum_eq
thf(fact_5535_mod__sum__eq,axiom,
    ! [F: int > int,A: int,A3: set_int] :
      ( ( modulo_modulo_int
        @ ( groups4538972089207619220nt_int
          @ ^ [I2: int] : ( modulo_modulo_int @ ( F @ I2 ) @ A )
          @ A3 )
        @ A )
      = ( modulo_modulo_int @ ( groups4538972089207619220nt_int @ F @ A3 ) @ A ) ) ).

% mod_sum_eq
thf(fact_5536_fst__def,axiom,
    ( product_fst_nat_nat
    = ( produc6842872674320459806at_nat
      @ ^ [X12: nat,X23: nat] : X12 ) ) ).

% fst_def
thf(fact_5537_fst__def,axiom,
    ( product_fst_int_int
    = ( produc8211389475949308722nt_int
      @ ^ [X12: int,X23: int] : X12 ) ) ).

% fst_def
thf(fact_5538_sum__power__add,axiom,
    ! [X: int,M: nat,I5: set_nat] :
      ( ( groups3539618377306564664at_int
        @ ^ [I2: nat] : ( power_power_int @ X @ ( plus_plus_nat @ M @ I2 ) )
        @ I5 )
      = ( times_times_int @ ( power_power_int @ X @ M ) @ ( groups3539618377306564664at_int @ ( power_power_int @ X ) @ I5 ) ) ) ).

% sum_power_add
thf(fact_5539_sum__power__add,axiom,
    ! [X: code_integer,M: nat,I5: set_nat] :
      ( ( groups7501900531339628137nteger
        @ ^ [I2: nat] : ( power_8256067586552552935nteger @ X @ ( plus_plus_nat @ M @ I2 ) )
        @ I5 )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ X @ M ) @ ( groups7501900531339628137nteger @ ( power_8256067586552552935nteger @ X ) @ I5 ) ) ) ).

% sum_power_add
thf(fact_5540_sum__power__add,axiom,
    ! [X: rat,M: nat,I5: set_nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [I2: nat] : ( power_power_rat @ X @ ( plus_plus_nat @ M @ I2 ) )
        @ I5 )
      = ( times_times_rat @ ( power_power_rat @ X @ M ) @ ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ I5 ) ) ) ).

% sum_power_add
thf(fact_5541_pred__def,axiom,
    ( pred
    = ( case_nat_nat @ zero_zero_nat
      @ ^ [X23: nat] : X23 ) ) ).

% pred_def
thf(fact_5542_integer__of__num_I2_J,axiom,
    ! [N: num] :
      ( ( code_integer_of_num @ ( bit0 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( code_integer_of_num @ N ) @ ( code_integer_of_num @ N ) ) ) ).

% integer_of_num(2)
thf(fact_5543_mask__eq__sum__exp,axiom,
    ! [N: nat] :
      ( ( minus_7197305767214868737atural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) @ one_one_Code_natural )
      = ( groups6325495683096345652atural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) )
        @ ( collect_nat
          @ ^ [Q4: nat] : ( ord_less_nat @ Q4 @ N ) ) ) ) ).

% mask_eq_sum_exp
thf(fact_5544_mask__eq__sum__exp,axiom,
    ! [N: nat] :
      ( ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ one_one_int )
      = ( groups3539618377306564664at_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
        @ ( collect_nat
          @ ^ [Q4: nat] : ( ord_less_nat @ Q4 @ N ) ) ) ) ).

% mask_eq_sum_exp
thf(fact_5545_mask__eq__sum__exp,axiom,
    ! [N: nat] :
      ( ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) @ one_one_Code_integer )
      = ( groups7501900531339628137nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
        @ ( collect_nat
          @ ^ [Q4: nat] : ( ord_less_nat @ Q4 @ N ) ) ) ) ).

% mask_eq_sum_exp
thf(fact_5546_mask__eq__sum__exp,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ one_one_nat )
      = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        @ ( collect_nat
          @ ^ [Q4: nat] : ( ord_less_nat @ Q4 @ N ) ) ) ) ).

% mask_eq_sum_exp
thf(fact_5547_and__nat__unfold,axiom,
    ( bit_se727722235901077358nd_nat
    = ( ^ [M5: nat,N5: nat] :
          ( if_nat
          @ ( ( M5 = zero_zero_nat )
            | ( N5 = zero_zero_nat ) )
          @ zero_zero_nat
          @ ( plus_plus_nat @ ( times_times_nat @ ( modulo_modulo_nat @ M5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ N5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se727722235901077358nd_nat @ ( divide_divide_nat @ M5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% and_nat_unfold
thf(fact_5548_and__nat__rec,axiom,
    ( bit_se727722235901077358nd_nat
    = ( ^ [M5: nat,N5: nat] :
          ( plus_plus_nat
          @ ( zero_n2687167440665602831ol_nat
            @ ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 )
              & ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N5 ) ) )
          @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se727722235901077358nd_nat @ ( divide_divide_nat @ M5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% and_nat_rec
thf(fact_5549_sum__abs__ge__zero,axiom,
    ! [F: int > int,A3: set_int] :
      ( ord_less_eq_int @ zero_zero_int
      @ ( groups4538972089207619220nt_int
        @ ^ [I2: int] : ( abs_abs_int @ ( F @ I2 ) )
        @ A3 ) ) ).

% sum_abs_ge_zero
thf(fact_5550_sum__abs,axiom,
    ! [F: int > int,A3: set_int] :
      ( ord_less_eq_int @ ( abs_abs_int @ ( groups4538972089207619220nt_int @ F @ A3 ) )
      @ ( groups4538972089207619220nt_int
        @ ^ [I2: int] : ( abs_abs_int @ ( F @ I2 ) )
        @ A3 ) ) ).

% sum_abs
thf(fact_5551_convex__sum__bound__le,axiom,
    ! [I5: set_nat,X: nat > code_integer,A: nat > code_integer,B: code_integer,Delta: code_integer] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ I5 )
         => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( X @ I3 ) ) )
     => ( ( ( groups7501900531339628137nteger @ X @ I5 )
          = one_one_Code_integer )
       => ( ! [I3: nat] :
              ( ( member_nat @ I3 @ I5 )
             => ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ ( A @ I3 ) @ B ) ) @ Delta ) )
         => ( ord_le3102999989581377725nteger
            @ ( abs_abs_Code_integer
              @ ( minus_8373710615458151222nteger
                @ ( groups7501900531339628137nteger
                  @ ^ [I2: nat] : ( times_3573771949741848930nteger @ ( A @ I2 ) @ ( X @ I2 ) )
                  @ I5 )
                @ B ) )
            @ Delta ) ) ) ) ).

% convex_sum_bound_le
thf(fact_5552_convex__sum__bound__le,axiom,
    ! [I5: set_int,X: int > code_integer,A: int > code_integer,B: code_integer,Delta: code_integer] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ I5 )
         => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( X @ I3 ) ) )
     => ( ( ( groups7873554091576472773nteger @ X @ I5 )
          = one_one_Code_integer )
       => ( ! [I3: int] :
              ( ( member_int @ I3 @ I5 )
             => ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ ( A @ I3 ) @ B ) ) @ Delta ) )
         => ( ord_le3102999989581377725nteger
            @ ( abs_abs_Code_integer
              @ ( minus_8373710615458151222nteger
                @ ( groups7873554091576472773nteger
                  @ ^ [I2: int] : ( times_3573771949741848930nteger @ ( A @ I2 ) @ ( X @ I2 ) )
                  @ I5 )
                @ B ) )
            @ Delta ) ) ) ) ).

% convex_sum_bound_le
thf(fact_5553_convex__sum__bound__le,axiom,
    ! [I5: set_nat,X: nat > rat,A: nat > rat,B: rat,Delta: rat] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ I5 )
         => ( ord_less_eq_rat @ zero_zero_rat @ ( X @ I3 ) ) )
     => ( ( ( groups2906978787729119204at_rat @ X @ I5 )
          = one_one_rat )
       => ( ! [I3: nat] :
              ( ( member_nat @ I3 @ I5 )
             => ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ ( A @ I3 ) @ B ) ) @ Delta ) )
         => ( ord_less_eq_rat
            @ ( abs_abs_rat
              @ ( minus_minus_rat
                @ ( groups2906978787729119204at_rat
                  @ ^ [I2: nat] : ( times_times_rat @ ( A @ I2 ) @ ( X @ I2 ) )
                  @ I5 )
                @ B ) )
            @ Delta ) ) ) ) ).

% convex_sum_bound_le
thf(fact_5554_convex__sum__bound__le,axiom,
    ! [I5: set_int,X: int > rat,A: int > rat,B: rat,Delta: rat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ I5 )
         => ( ord_less_eq_rat @ zero_zero_rat @ ( X @ I3 ) ) )
     => ( ( ( groups3906332499630173760nt_rat @ X @ I5 )
          = one_one_rat )
       => ( ! [I3: int] :
              ( ( member_int @ I3 @ I5 )
             => ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ ( A @ I3 ) @ B ) ) @ Delta ) )
         => ( ord_less_eq_rat
            @ ( abs_abs_rat
              @ ( minus_minus_rat
                @ ( groups3906332499630173760nt_rat
                  @ ^ [I2: int] : ( times_times_rat @ ( A @ I2 ) @ ( X @ I2 ) )
                  @ I5 )
                @ B ) )
            @ Delta ) ) ) ) ).

% convex_sum_bound_le
thf(fact_5555_convex__sum__bound__le,axiom,
    ! [I5: set_nat,X: nat > int,A: nat > int,B: int,Delta: int] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ I5 )
         => ( ord_less_eq_int @ zero_zero_int @ ( X @ I3 ) ) )
     => ( ( ( groups3539618377306564664at_int @ X @ I5 )
          = one_one_int )
       => ( ! [I3: nat] :
              ( ( member_nat @ I3 @ I5 )
             => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( A @ I3 ) @ B ) ) @ Delta ) )
         => ( ord_less_eq_int
            @ ( abs_abs_int
              @ ( minus_minus_int
                @ ( groups3539618377306564664at_int
                  @ ^ [I2: nat] : ( times_times_int @ ( A @ I2 ) @ ( X @ I2 ) )
                  @ I5 )
                @ B ) )
            @ Delta ) ) ) ) ).

% convex_sum_bound_le
thf(fact_5556_convex__sum__bound__le,axiom,
    ! [I5: set_int,X: int > int,A: int > int,B: int,Delta: int] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ I5 )
         => ( ord_less_eq_int @ zero_zero_int @ ( X @ I3 ) ) )
     => ( ( ( groups4538972089207619220nt_int @ X @ I5 )
          = one_one_int )
       => ( ! [I3: int] :
              ( ( member_int @ I3 @ I5 )
             => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( A @ I3 ) @ B ) ) @ Delta ) )
         => ( ord_less_eq_int
            @ ( abs_abs_int
              @ ( minus_minus_int
                @ ( groups4538972089207619220nt_int
                  @ ^ [I2: int] : ( times_times_int @ ( A @ I2 ) @ ( X @ I2 ) )
                  @ I5 )
                @ B ) )
            @ Delta ) ) ) ) ).

% convex_sum_bound_le
thf(fact_5557_convex__sum__bound__le,axiom,
    ! [I5: set_set_nat,X: set_nat > code_integer,A: set_nat > code_integer,B: code_integer,Delta: code_integer] :
      ( ! [I3: set_nat] :
          ( ( member_set_nat @ I3 @ I5 )
         => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( X @ I3 ) ) )
     => ( ( ( groups9190459664516455967nteger @ X @ I5 )
          = one_one_Code_integer )
       => ( ! [I3: set_nat] :
              ( ( member_set_nat @ I3 @ I5 )
             => ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ ( A @ I3 ) @ B ) ) @ Delta ) )
         => ( ord_le3102999989581377725nteger
            @ ( abs_abs_Code_integer
              @ ( minus_8373710615458151222nteger
                @ ( groups9190459664516455967nteger
                  @ ^ [I2: set_nat] : ( times_3573771949741848930nteger @ ( A @ I2 ) @ ( X @ I2 ) )
                  @ I5 )
                @ B ) )
            @ Delta ) ) ) ) ).

% convex_sum_bound_le
thf(fact_5558_convex__sum__bound__le,axiom,
    ! [I5: set_set_nat,X: set_nat > rat,A: set_nat > rat,B: rat,Delta: rat] :
      ( ! [I3: set_nat] :
          ( ( member_set_nat @ I3 @ I5 )
         => ( ord_less_eq_rat @ zero_zero_rat @ ( X @ I3 ) ) )
     => ( ( ( groups7659867448343625626at_rat @ X @ I5 )
          = one_one_rat )
       => ( ! [I3: set_nat] :
              ( ( member_set_nat @ I3 @ I5 )
             => ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ ( A @ I3 ) @ B ) ) @ Delta ) )
         => ( ord_less_eq_rat
            @ ( abs_abs_rat
              @ ( minus_minus_rat
                @ ( groups7659867448343625626at_rat
                  @ ^ [I2: set_nat] : ( times_times_rat @ ( A @ I2 ) @ ( X @ I2 ) )
                  @ I5 )
                @ B ) )
            @ Delta ) ) ) ) ).

% convex_sum_bound_le
thf(fact_5559_convex__sum__bound__le,axiom,
    ! [I5: set_set_nat,X: set_nat > int,A: set_nat > int,B: int,Delta: int] :
      ( ! [I3: set_nat] :
          ( ( member_set_nat @ I3 @ I5 )
         => ( ord_less_eq_int @ zero_zero_int @ ( X @ I3 ) ) )
     => ( ( ( groups8292507037921071086at_int @ X @ I5 )
          = one_one_int )
       => ( ! [I3: set_nat] :
              ( ( member_set_nat @ I3 @ I5 )
             => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( A @ I3 ) @ B ) ) @ Delta ) )
         => ( ord_less_eq_int
            @ ( abs_abs_int
              @ ( minus_minus_int
                @ ( groups8292507037921071086at_int
                  @ ^ [I2: set_nat] : ( times_times_int @ ( A @ I2 ) @ ( X @ I2 ) )
                  @ I5 )
                @ B ) )
            @ Delta ) ) ) ) ).

% convex_sum_bound_le
thf(fact_5560_convex__sum__bound__le,axiom,
    ! [I5: set_se7855581050983116737at_nat,X: set_Pr1261947904930325089at_nat > code_integer,A: set_Pr1261947904930325089at_nat > code_integer,B: code_integer,Delta: code_integer] :
      ( ! [I3: set_Pr1261947904930325089at_nat] :
          ( ( member2643936169264416010at_nat @ I3 @ I5 )
         => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( X @ I3 ) ) )
     => ( ( ( groups5114918151688220676nteger @ X @ I5 )
          = one_one_Code_integer )
       => ( ! [I3: set_Pr1261947904930325089at_nat] :
              ( ( member2643936169264416010at_nat @ I3 @ I5 )
             => ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ ( A @ I3 ) @ B ) ) @ Delta ) )
         => ( ord_le3102999989581377725nteger
            @ ( abs_abs_Code_integer
              @ ( minus_8373710615458151222nteger
                @ ( groups5114918151688220676nteger
                  @ ^ [I2: set_Pr1261947904930325089at_nat] : ( times_3573771949741848930nteger @ ( A @ I2 ) @ ( X @ I2 ) )
                  @ I5 )
                @ B ) )
            @ Delta ) ) ) ) ).

% convex_sum_bound_le
thf(fact_5561_abs__sum__abs,axiom,
    ! [F: int > int,A3: set_int] :
      ( ( abs_abs_int
        @ ( groups4538972089207619220nt_int
          @ ^ [A4: int] : ( abs_abs_int @ ( F @ A4 ) )
          @ A3 ) )
      = ( groups4538972089207619220nt_int
        @ ^ [A4: int] : ( abs_abs_int @ ( F @ A4 ) )
        @ A3 ) ) ).

% abs_sum_abs
thf(fact_5562_sum_Oneutral__const,axiom,
    ! [A3: set_nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [Uu: nat] : zero_zero_nat
        @ A3 )
      = zero_zero_nat ) ).

% sum.neutral_const
thf(fact_5563_sum_Oneutral__const,axiom,
    ! [A3: set_int] :
      ( ( groups4538972089207619220nt_int
        @ ^ [Uu: int] : zero_zero_int
        @ A3 )
      = zero_zero_int ) ).

% sum.neutral_const
thf(fact_5564_sum__SucD,axiom,
    ! [F: nat > nat,A3: set_nat,N: nat] :
      ( ( ( groups3542108847815614940at_nat @ F @ A3 )
        = ( suc @ N ) )
     => ? [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
          & ( ord_less_nat @ zero_zero_nat @ ( F @ X5 ) ) ) ) ).

% sum_SucD
thf(fact_5565_int__sum,axiom,
    ! [F: int > nat,A3: set_int] :
      ( ( semiri1314217659103216013at_int @ ( groups4541462559716669496nt_nat @ F @ A3 ) )
      = ( groups4538972089207619220nt_int
        @ ^ [X4: int] : ( semiri1314217659103216013at_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% int_sum
thf(fact_5566_int__sum,axiom,
    ! [F: nat > nat,A3: set_nat] :
      ( ( semiri1314217659103216013at_int @ ( groups3542108847815614940at_nat @ F @ A3 ) )
      = ( groups3539618377306564664at_int
        @ ^ [X4: nat] : ( semiri1314217659103216013at_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% int_sum
thf(fact_5567_sum_Oswap,axiom,
    ! [G: nat > nat > nat,B3: set_nat,A3: set_nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( groups3542108847815614940at_nat @ ( G @ I2 ) @ B3 )
        @ A3 )
      = ( groups3542108847815614940at_nat
        @ ^ [J3: nat] :
            ( groups3542108847815614940at_nat
            @ ^ [I2: nat] : ( G @ I2 @ J3 )
            @ A3 )
        @ B3 ) ) ).

% sum.swap
thf(fact_5568_sum_Oswap,axiom,
    ! [G: int > int > int,B3: set_int,A3: set_int] :
      ( ( groups4538972089207619220nt_int
        @ ^ [I2: int] : ( groups4538972089207619220nt_int @ ( G @ I2 ) @ B3 )
        @ A3 )
      = ( groups4538972089207619220nt_int
        @ ^ [J3: int] :
            ( groups4538972089207619220nt_int
            @ ^ [I2: int] : ( G @ I2 @ J3 )
            @ A3 )
        @ B3 ) ) ).

% sum.swap
thf(fact_5569_sum_Onot__neutral__contains__not__neutral,axiom,
    ! [G: int > nat,A3: set_int] :
      ( ( ( groups4541462559716669496nt_nat @ G @ A3 )
       != zero_zero_nat )
     => ~ ! [A2: int] :
            ( ( member_int @ A2 @ A3 )
           => ( ( G @ A2 )
              = zero_zero_nat ) ) ) ).

% sum.not_neutral_contains_not_neutral
thf(fact_5570_sum_Onot__neutral__contains__not__neutral,axiom,
    ! [G: nat > int,A3: set_nat] :
      ( ( ( groups3539618377306564664at_int @ G @ A3 )
       != zero_zero_int )
     => ~ ! [A2: nat] :
            ( ( member_nat @ A2 @ A3 )
           => ( ( G @ A2 )
              = zero_zero_int ) ) ) ).

% sum.not_neutral_contains_not_neutral
thf(fact_5571_sum_Onot__neutral__contains__not__neutral,axiom,
    ! [G: nat > code_integer,A3: set_nat] :
      ( ( ( groups7501900531339628137nteger @ G @ A3 )
       != zero_z3403309356797280102nteger )
     => ~ ! [A2: nat] :
            ( ( member_nat @ A2 @ A3 )
           => ( ( G @ A2 )
              = zero_z3403309356797280102nteger ) ) ) ).

% sum.not_neutral_contains_not_neutral
thf(fact_5572_sum_Onot__neutral__contains__not__neutral,axiom,
    ! [G: int > code_integer,A3: set_int] :
      ( ( ( groups7873554091576472773nteger @ G @ A3 )
       != zero_z3403309356797280102nteger )
     => ~ ! [A2: int] :
            ( ( member_int @ A2 @ A3 )
           => ( ( G @ A2 )
              = zero_z3403309356797280102nteger ) ) ) ).

% sum.not_neutral_contains_not_neutral
thf(fact_5573_sum_Onot__neutral__contains__not__neutral,axiom,
    ! [G: nat > rat,A3: set_nat] :
      ( ( ( groups2906978787729119204at_rat @ G @ A3 )
       != zero_zero_rat )
     => ~ ! [A2: nat] :
            ( ( member_nat @ A2 @ A3 )
           => ( ( G @ A2 )
              = zero_zero_rat ) ) ) ).

% sum.not_neutral_contains_not_neutral
thf(fact_5574_sum_Onot__neutral__contains__not__neutral,axiom,
    ! [G: int > rat,A3: set_int] :
      ( ( ( groups3906332499630173760nt_rat @ G @ A3 )
       != zero_zero_rat )
     => ~ ! [A2: int] :
            ( ( member_int @ A2 @ A3 )
           => ( ( G @ A2 )
              = zero_zero_rat ) ) ) ).

% sum.not_neutral_contains_not_neutral
thf(fact_5575_sum_Onot__neutral__contains__not__neutral,axiom,
    ! [G: nat > code_natural,A3: set_nat] :
      ( ( ( groups6325495683096345652atural @ G @ A3 )
       != zero_z2226904508553997617atural )
     => ~ ! [A2: nat] :
            ( ( member_nat @ A2 @ A3 )
           => ( ( G @ A2 )
              = zero_z2226904508553997617atural ) ) ) ).

% sum.not_neutral_contains_not_neutral
thf(fact_5576_sum_Onot__neutral__contains__not__neutral,axiom,
    ! [G: int > code_natural,A3: set_int] :
      ( ( ( groups6697149243333190288atural @ G @ A3 )
       != zero_z2226904508553997617atural )
     => ~ ! [A2: int] :
            ( ( member_int @ A2 @ A3 )
           => ( ( G @ A2 )
              = zero_z2226904508553997617atural ) ) ) ).

% sum.not_neutral_contains_not_neutral
thf(fact_5577_sum_Onot__neutral__contains__not__neutral,axiom,
    ! [G: nat > nat,A3: set_nat] :
      ( ( ( groups3542108847815614940at_nat @ G @ A3 )
       != zero_zero_nat )
     => ~ ! [A2: nat] :
            ( ( member_nat @ A2 @ A3 )
           => ( ( G @ A2 )
              = zero_zero_nat ) ) ) ).

% sum.not_neutral_contains_not_neutral
thf(fact_5578_sum_Onot__neutral__contains__not__neutral,axiom,
    ! [G: int > int,A3: set_int] :
      ( ( ( groups4538972089207619220nt_int @ G @ A3 )
       != zero_zero_int )
     => ~ ! [A2: int] :
            ( ( member_int @ A2 @ A3 )
           => ( ( G @ A2 )
              = zero_zero_int ) ) ) ).

% sum.not_neutral_contains_not_neutral
thf(fact_5579_sum_Oneutral,axiom,
    ! [A3: set_nat,G: nat > nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ( G @ X5 )
            = zero_zero_nat ) )
     => ( ( groups3542108847815614940at_nat @ G @ A3 )
        = zero_zero_nat ) ) ).

% sum.neutral
thf(fact_5580_sum_Oneutral,axiom,
    ! [A3: set_int,G: int > int] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ( G @ X5 )
            = zero_zero_int ) )
     => ( ( groups4538972089207619220nt_int @ G @ A3 )
        = zero_zero_int ) ) ).

% sum.neutral
thf(fact_5581_sum__mono,axiom,
    ! [K5: set_nat,F: nat > rat,G: nat > rat] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ K5 )
         => ( ord_less_eq_rat @ ( F @ I3 ) @ ( G @ I3 ) ) )
     => ( ord_less_eq_rat @ ( groups2906978787729119204at_rat @ F @ K5 ) @ ( groups2906978787729119204at_rat @ G @ K5 ) ) ) ).

% sum_mono
thf(fact_5582_sum__mono,axiom,
    ! [K5: set_int,F: int > rat,G: int > rat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ K5 )
         => ( ord_less_eq_rat @ ( F @ I3 ) @ ( G @ I3 ) ) )
     => ( ord_less_eq_rat @ ( groups3906332499630173760nt_rat @ F @ K5 ) @ ( groups3906332499630173760nt_rat @ G @ K5 ) ) ) ).

% sum_mono
thf(fact_5583_sum__mono,axiom,
    ! [K5: set_int,F: int > nat,G: int > nat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ K5 )
         => ( ord_less_eq_nat @ ( F @ I3 ) @ ( G @ I3 ) ) )
     => ( ord_less_eq_nat @ ( groups4541462559716669496nt_nat @ F @ K5 ) @ ( groups4541462559716669496nt_nat @ G @ K5 ) ) ) ).

% sum_mono
thf(fact_5584_sum__mono,axiom,
    ! [K5: set_nat,F: nat > int,G: nat > int] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ K5 )
         => ( ord_less_eq_int @ ( F @ I3 ) @ ( G @ I3 ) ) )
     => ( ord_less_eq_int @ ( groups3539618377306564664at_int @ F @ K5 ) @ ( groups3539618377306564664at_int @ G @ K5 ) ) ) ).

% sum_mono
thf(fact_5585_sum__mono,axiom,
    ! [K5: set_nat,F: nat > nat,G: nat > nat] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ K5 )
         => ( ord_less_eq_nat @ ( F @ I3 ) @ ( G @ I3 ) ) )
     => ( ord_less_eq_nat @ ( groups3542108847815614940at_nat @ F @ K5 ) @ ( groups3542108847815614940at_nat @ G @ K5 ) ) ) ).

% sum_mono
thf(fact_5586_sum__mono,axiom,
    ! [K5: set_int,F: int > int,G: int > int] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ K5 )
         => ( ord_less_eq_int @ ( F @ I3 ) @ ( G @ I3 ) ) )
     => ( ord_less_eq_int @ ( groups4538972089207619220nt_int @ F @ K5 ) @ ( groups4538972089207619220nt_int @ G @ K5 ) ) ) ).

% sum_mono
thf(fact_5587_sum__mono,axiom,
    ! [K5: set_set_nat,F: set_nat > rat,G: set_nat > rat] :
      ( ! [I3: set_nat] :
          ( ( member_set_nat @ I3 @ K5 )
         => ( ord_less_eq_rat @ ( F @ I3 ) @ ( G @ I3 ) ) )
     => ( ord_less_eq_rat @ ( groups7659867448343625626at_rat @ F @ K5 ) @ ( groups7659867448343625626at_rat @ G @ K5 ) ) ) ).

% sum_mono
thf(fact_5588_sum__mono,axiom,
    ! [K5: set_set_nat,F: set_nat > nat,G: set_nat > nat] :
      ( ! [I3: set_nat] :
          ( ( member_set_nat @ I3 @ K5 )
         => ( ord_less_eq_nat @ ( F @ I3 ) @ ( G @ I3 ) ) )
     => ( ord_less_eq_nat @ ( groups8294997508430121362at_nat @ F @ K5 ) @ ( groups8294997508430121362at_nat @ G @ K5 ) ) ) ).

% sum_mono
thf(fact_5589_sum__mono,axiom,
    ! [K5: set_set_nat,F: set_nat > int,G: set_nat > int] :
      ( ! [I3: set_nat] :
          ( ( member_set_nat @ I3 @ K5 )
         => ( ord_less_eq_int @ ( F @ I3 ) @ ( G @ I3 ) ) )
     => ( ord_less_eq_int @ ( groups8292507037921071086at_int @ F @ K5 ) @ ( groups8292507037921071086at_int @ G @ K5 ) ) ) ).

% sum_mono
thf(fact_5590_sum__mono,axiom,
    ! [K5: set_se7855581050983116737at_nat,F: set_Pr1261947904930325089at_nat > rat,G: set_Pr1261947904930325089at_nat > rat] :
      ( ! [I3: set_Pr1261947904930325089at_nat] :
          ( ( member2643936169264416010at_nat @ I3 @ K5 )
         => ( ord_less_eq_rat @ ( F @ I3 ) @ ( G @ I3 ) ) )
     => ( ord_less_eq_rat @ ( groups8769308092024186239at_rat @ F @ K5 ) @ ( groups8769308092024186239at_rat @ G @ K5 ) ) ) ).

% sum_mono
thf(fact_5591_sum__distrib__left,axiom,
    ! [R: nat,F: nat > nat,A3: set_nat] :
      ( ( times_times_nat @ R @ ( groups3542108847815614940at_nat @ F @ A3 ) )
      = ( groups3542108847815614940at_nat
        @ ^ [N5: nat] : ( times_times_nat @ R @ ( F @ N5 ) )
        @ A3 ) ) ).

% sum_distrib_left
thf(fact_5592_sum__distrib__left,axiom,
    ! [R: int,F: int > int,A3: set_int] :
      ( ( times_times_int @ R @ ( groups4538972089207619220nt_int @ F @ A3 ) )
      = ( groups4538972089207619220nt_int
        @ ^ [N5: int] : ( times_times_int @ R @ ( F @ N5 ) )
        @ A3 ) ) ).

% sum_distrib_left
thf(fact_5593_sum__distrib__right,axiom,
    ! [F: nat > nat,A3: set_nat,R: nat] :
      ( ( times_times_nat @ ( groups3542108847815614940at_nat @ F @ A3 ) @ R )
      = ( groups3542108847815614940at_nat
        @ ^ [N5: nat] : ( times_times_nat @ ( F @ N5 ) @ R )
        @ A3 ) ) ).

% sum_distrib_right
thf(fact_5594_sum__distrib__right,axiom,
    ! [F: int > int,A3: set_int,R: int] :
      ( ( times_times_int @ ( groups4538972089207619220nt_int @ F @ A3 ) @ R )
      = ( groups4538972089207619220nt_int
        @ ^ [N5: int] : ( times_times_int @ ( F @ N5 ) @ R )
        @ A3 ) ) ).

% sum_distrib_right
thf(fact_5595_sum__product,axiom,
    ! [F: nat > nat,A3: set_nat,G: nat > nat,B3: set_nat] :
      ( ( times_times_nat @ ( groups3542108847815614940at_nat @ F @ A3 ) @ ( groups3542108847815614940at_nat @ G @ B3 ) )
      = ( groups3542108847815614940at_nat
        @ ^ [I2: nat] :
            ( groups3542108847815614940at_nat
            @ ^ [J3: nat] : ( times_times_nat @ ( F @ I2 ) @ ( G @ J3 ) )
            @ B3 )
        @ A3 ) ) ).

% sum_product
thf(fact_5596_sum__product,axiom,
    ! [F: int > int,A3: set_int,G: int > int,B3: set_int] :
      ( ( times_times_int @ ( groups4538972089207619220nt_int @ F @ A3 ) @ ( groups4538972089207619220nt_int @ G @ B3 ) )
      = ( groups4538972089207619220nt_int
        @ ^ [I2: int] :
            ( groups4538972089207619220nt_int
            @ ^ [J3: int] : ( times_times_int @ ( F @ I2 ) @ ( G @ J3 ) )
            @ B3 )
        @ A3 ) ) ).

% sum_product
thf(fact_5597_sum_Odistrib,axiom,
    ! [G: nat > nat,H: nat > nat,A3: set_nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : ( plus_plus_nat @ ( G @ X4 ) @ ( H @ X4 ) )
        @ A3 )
      = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ A3 ) @ ( groups3542108847815614940at_nat @ H @ A3 ) ) ) ).

% sum.distrib
thf(fact_5598_sum_Odistrib,axiom,
    ! [G: int > int,H: int > int,A3: set_int] :
      ( ( groups4538972089207619220nt_int
        @ ^ [X4: int] : ( plus_plus_int @ ( G @ X4 ) @ ( H @ X4 ) )
        @ A3 )
      = ( plus_plus_int @ ( groups4538972089207619220nt_int @ G @ A3 ) @ ( groups4538972089207619220nt_int @ H @ A3 ) ) ) ).

% sum.distrib
thf(fact_5599_sum__subtractf,axiom,
    ! [F: int > int,G: int > int,A3: set_int] :
      ( ( groups4538972089207619220nt_int
        @ ^ [X4: int] : ( minus_minus_int @ ( F @ X4 ) @ ( G @ X4 ) )
        @ A3 )
      = ( minus_minus_int @ ( groups4538972089207619220nt_int @ F @ A3 ) @ ( groups4538972089207619220nt_int @ G @ A3 ) ) ) ).

% sum_subtractf
thf(fact_5600_sum__negf,axiom,
    ! [F: int > int,A3: set_int] :
      ( ( groups4538972089207619220nt_int
        @ ^ [X4: int] : ( uminus_uminus_int @ ( F @ X4 ) )
        @ A3 )
      = ( uminus_uminus_int @ ( groups4538972089207619220nt_int @ F @ A3 ) ) ) ).

% sum_negf
thf(fact_5601_sum__nonpos,axiom,
    ! [A3: set_nat,F: nat > code_integer] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_le3102999989581377725nteger @ ( F @ X5 ) @ zero_z3403309356797280102nteger ) )
     => ( ord_le3102999989581377725nteger @ ( groups7501900531339628137nteger @ F @ A3 ) @ zero_z3403309356797280102nteger ) ) ).

% sum_nonpos
thf(fact_5602_sum__nonpos,axiom,
    ! [A3: set_int,F: int > code_integer] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_le3102999989581377725nteger @ ( F @ X5 ) @ zero_z3403309356797280102nteger ) )
     => ( ord_le3102999989581377725nteger @ ( groups7873554091576472773nteger @ F @ A3 ) @ zero_z3403309356797280102nteger ) ) ).

% sum_nonpos
thf(fact_5603_sum__nonpos,axiom,
    ! [A3: set_nat,F: nat > code_natural] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_le1926595141338095240atural @ ( F @ X5 ) @ zero_z2226904508553997617atural ) )
     => ( ord_le1926595141338095240atural @ ( groups6325495683096345652atural @ F @ A3 ) @ zero_z2226904508553997617atural ) ) ).

% sum_nonpos
thf(fact_5604_sum__nonpos,axiom,
    ! [A3: set_int,F: int > code_natural] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_le1926595141338095240atural @ ( F @ X5 ) @ zero_z2226904508553997617atural ) )
     => ( ord_le1926595141338095240atural @ ( groups6697149243333190288atural @ F @ A3 ) @ zero_z2226904508553997617atural ) ) ).

% sum_nonpos
thf(fact_5605_sum__nonpos,axiom,
    ! [A3: set_nat,F: nat > rat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_rat @ ( F @ X5 ) @ zero_zero_rat ) )
     => ( ord_less_eq_rat @ ( groups2906978787729119204at_rat @ F @ A3 ) @ zero_zero_rat ) ) ).

% sum_nonpos
thf(fact_5606_sum__nonpos,axiom,
    ! [A3: set_int,F: int > rat] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_rat @ ( F @ X5 ) @ zero_zero_rat ) )
     => ( ord_less_eq_rat @ ( groups3906332499630173760nt_rat @ F @ A3 ) @ zero_zero_rat ) ) ).

% sum_nonpos
thf(fact_5607_sum__nonpos,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_nat @ ( F @ X5 ) @ zero_zero_nat ) )
     => ( ord_less_eq_nat @ ( groups4541462559716669496nt_nat @ F @ A3 ) @ zero_zero_nat ) ) ).

% sum_nonpos
thf(fact_5608_sum__nonpos,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_int @ ( F @ X5 ) @ zero_zero_int ) )
     => ( ord_less_eq_int @ ( groups3539618377306564664at_int @ F @ A3 ) @ zero_zero_int ) ) ).

% sum_nonpos
thf(fact_5609_sum__nonpos,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_nat @ ( F @ X5 ) @ zero_zero_nat ) )
     => ( ord_less_eq_nat @ ( groups3542108847815614940at_nat @ F @ A3 ) @ zero_zero_nat ) ) ).

% sum_nonpos
thf(fact_5610_sum__nonpos,axiom,
    ! [A3: set_int,F: int > int] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_int @ ( F @ X5 ) @ zero_zero_int ) )
     => ( ord_less_eq_int @ ( groups4538972089207619220nt_int @ F @ A3 ) @ zero_zero_int ) ) ).

% sum_nonpos
thf(fact_5611_sum__nonneg,axiom,
    ! [A3: set_nat,F: nat > code_integer] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ X5 ) ) )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( groups7501900531339628137nteger @ F @ A3 ) ) ) ).

% sum_nonneg
thf(fact_5612_sum__nonneg,axiom,
    ! [A3: set_int,F: int > code_integer] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ X5 ) ) )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( groups7873554091576472773nteger @ F @ A3 ) ) ) ).

% sum_nonneg
thf(fact_5613_sum__nonneg,axiom,
    ! [A3: set_nat,F: nat > code_natural] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ X5 ) ) )
     => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( groups6325495683096345652atural @ F @ A3 ) ) ) ).

% sum_nonneg
thf(fact_5614_sum__nonneg,axiom,
    ! [A3: set_int,F: int > code_natural] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ X5 ) ) )
     => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( groups6697149243333190288atural @ F @ A3 ) ) ) ).

% sum_nonneg
thf(fact_5615_sum__nonneg,axiom,
    ! [A3: set_nat,F: nat > rat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ X5 ) ) )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( groups2906978787729119204at_rat @ F @ A3 ) ) ) ).

% sum_nonneg
thf(fact_5616_sum__nonneg,axiom,
    ! [A3: set_int,F: int > rat] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ X5 ) ) )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( groups3906332499630173760nt_rat @ F @ A3 ) ) ) ).

% sum_nonneg
thf(fact_5617_sum__nonneg,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ X5 ) ) )
     => ( ord_less_eq_nat @ zero_zero_nat @ ( groups4541462559716669496nt_nat @ F @ A3 ) ) ) ).

% sum_nonneg
thf(fact_5618_sum__nonneg,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_int @ zero_zero_int @ ( F @ X5 ) ) )
     => ( ord_less_eq_int @ zero_zero_int @ ( groups3539618377306564664at_int @ F @ A3 ) ) ) ).

% sum_nonneg
thf(fact_5619_sum__nonneg,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ X5 ) ) )
     => ( ord_less_eq_nat @ zero_zero_nat @ ( groups3542108847815614940at_nat @ F @ A3 ) ) ) ).

% sum_nonneg
thf(fact_5620_sum__nonneg,axiom,
    ! [A3: set_int,F: int > int] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_int @ zero_zero_int @ ( F @ X5 ) ) )
     => ( ord_less_eq_int @ zero_zero_int @ ( groups4538972089207619220nt_int @ F @ A3 ) ) ) ).

% sum_nonneg
thf(fact_5621_sum__cong__Suc,axiom,
    ! [A3: set_nat,F: nat > nat,G: nat > nat] :
      ( ~ ( member_nat @ zero_zero_nat @ A3 )
     => ( ! [X5: nat] :
            ( ( member_nat @ ( suc @ X5 ) @ A3 )
           => ( ( F @ ( suc @ X5 ) )
              = ( G @ ( suc @ X5 ) ) ) )
       => ( ( groups3542108847815614940at_nat @ F @ A3 )
          = ( groups3542108847815614940at_nat @ G @ A3 ) ) ) ) ).

% sum_cong_Suc
thf(fact_5622_sum__subtractf__nat,axiom,
    ! [A3: set_se7855581050983116737at_nat,G: set_Pr1261947904930325089at_nat > nat,F: set_Pr1261947904930325089at_nat > nat] :
      ( ! [X5: set_Pr1261947904930325089at_nat] :
          ( ( member2643936169264416010at_nat @ X5 @ A3 )
         => ( ord_less_eq_nat @ ( G @ X5 ) @ ( F @ X5 ) ) )
     => ( ( groups181066115255906167at_nat
          @ ^ [X4: set_Pr1261947904930325089at_nat] : ( minus_minus_nat @ ( F @ X4 ) @ ( G @ X4 ) )
          @ A3 )
        = ( minus_minus_nat @ ( groups181066115255906167at_nat @ F @ A3 ) @ ( groups181066115255906167at_nat @ G @ A3 ) ) ) ) ).

% sum_subtractf_nat
thf(fact_5623_sum__subtractf__nat,axiom,
    ! [A3: set_se6260736226359567993nt_int,G: set_Pr958786334691620121nt_int > nat,F: set_Pr958786334691620121nt_int > nat] :
      ( ! [X5: set_Pr958786334691620121nt_int] :
          ( ( member2340774599025711042nt_int @ X5 @ A3 )
         => ( ord_less_eq_nat @ ( G @ X5 ) @ ( F @ X5 ) ) )
     => ( ( groups185207323561075247nt_nat
          @ ^ [X4: set_Pr958786334691620121nt_int] : ( minus_minus_nat @ ( F @ X4 ) @ ( G @ X4 ) )
          @ A3 )
        = ( minus_minus_nat @ ( groups185207323561075247nt_nat @ F @ A3 ) @ ( groups185207323561075247nt_nat @ G @ A3 ) ) ) ) ).

% sum_subtractf_nat
thf(fact_5624_sum__subtractf__nat,axiom,
    ! [A3: set_set_nat,G: set_nat > nat,F: set_nat > nat] :
      ( ! [X5: set_nat] :
          ( ( member_set_nat @ X5 @ A3 )
         => ( ord_less_eq_nat @ ( G @ X5 ) @ ( F @ X5 ) ) )
     => ( ( groups8294997508430121362at_nat
          @ ^ [X4: set_nat] : ( minus_minus_nat @ ( F @ X4 ) @ ( G @ X4 ) )
          @ A3 )
        = ( minus_minus_nat @ ( groups8294997508430121362at_nat @ F @ A3 ) @ ( groups8294997508430121362at_nat @ G @ A3 ) ) ) ) ).

% sum_subtractf_nat
thf(fact_5625_sum__subtractf__nat,axiom,
    ! [A3: set_int,G: int > nat,F: int > nat] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_nat @ ( G @ X5 ) @ ( F @ X5 ) ) )
     => ( ( groups4541462559716669496nt_nat
          @ ^ [X4: int] : ( minus_minus_nat @ ( F @ X4 ) @ ( G @ X4 ) )
          @ A3 )
        = ( minus_minus_nat @ ( groups4541462559716669496nt_nat @ F @ A3 ) @ ( groups4541462559716669496nt_nat @ G @ A3 ) ) ) ) ).

% sum_subtractf_nat
thf(fact_5626_sum__subtractf__nat,axiom,
    ! [A3: set_nat,G: nat > nat,F: nat > nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_nat @ ( G @ X5 ) @ ( F @ X5 ) ) )
     => ( ( groups3542108847815614940at_nat
          @ ^ [X4: nat] : ( minus_minus_nat @ ( F @ X4 ) @ ( G @ X4 ) )
          @ A3 )
        = ( minus_minus_nat @ ( groups3542108847815614940at_nat @ F @ A3 ) @ ( groups3542108847815614940at_nat @ G @ A3 ) ) ) ) ).

% sum_subtractf_nat
thf(fact_5627_sum__comp__morphism,axiom,
    ! [H: nat > int,G: nat > nat,A3: set_nat] :
      ( ( ( H @ zero_zero_nat )
        = zero_zero_int )
     => ( ! [X5: nat,Y4: nat] :
            ( ( H @ ( plus_plus_nat @ X5 @ Y4 ) )
            = ( plus_plus_int @ ( H @ X5 ) @ ( H @ Y4 ) ) )
       => ( ( groups3539618377306564664at_int @ ( comp_nat_int_nat @ H @ G ) @ A3 )
          = ( H @ ( groups3542108847815614940at_nat @ G @ A3 ) ) ) ) ) ).

% sum_comp_morphism
thf(fact_5628_sum__comp__morphism,axiom,
    ! [H: nat > code_integer,G: nat > nat,A3: set_nat] :
      ( ( ( H @ zero_zero_nat )
        = zero_z3403309356797280102nteger )
     => ( ! [X5: nat,Y4: nat] :
            ( ( H @ ( plus_plus_nat @ X5 @ Y4 ) )
            = ( plus_p5714425477246183910nteger @ ( H @ X5 ) @ ( H @ Y4 ) ) )
       => ( ( groups7501900531339628137nteger @ ( comp_n3898172953802868194er_nat @ H @ G ) @ A3 )
          = ( H @ ( groups3542108847815614940at_nat @ G @ A3 ) ) ) ) ) ).

% sum_comp_morphism
thf(fact_5629_sum__comp__morphism,axiom,
    ! [H: nat > rat,G: nat > nat,A3: set_nat] :
      ( ( ( H @ zero_zero_nat )
        = zero_zero_rat )
     => ( ! [X5: nat,Y4: nat] :
            ( ( H @ ( plus_plus_nat @ X5 @ Y4 ) )
            = ( plus_plus_rat @ ( H @ X5 ) @ ( H @ Y4 ) ) )
       => ( ( groups2906978787729119204at_rat @ ( comp_nat_rat_nat @ H @ G ) @ A3 )
          = ( H @ ( groups3542108847815614940at_nat @ G @ A3 ) ) ) ) ) ).

% sum_comp_morphism
thf(fact_5630_sum__comp__morphism,axiom,
    ! [H: nat > code_natural,G: nat > nat,A3: set_nat] :
      ( ( ( H @ zero_zero_nat )
        = zero_z2226904508553997617atural )
     => ( ! [X5: nat,Y4: nat] :
            ( ( H @ ( plus_plus_nat @ X5 @ Y4 ) )
            = ( plus_p4538020629002901425atural @ ( H @ X5 ) @ ( H @ Y4 ) ) )
       => ( ( groups6325495683096345652atural @ ( comp_n9163001964490475437al_nat @ H @ G ) @ A3 )
          = ( H @ ( groups3542108847815614940at_nat @ G @ A3 ) ) ) ) ) ).

% sum_comp_morphism
thf(fact_5631_sum__comp__morphism,axiom,
    ! [H: int > nat,G: int > int,A3: set_int] :
      ( ( ( H @ zero_zero_int )
        = zero_zero_nat )
     => ( ! [X5: int,Y4: int] :
            ( ( H @ ( plus_plus_int @ X5 @ Y4 ) )
            = ( plus_plus_nat @ ( H @ X5 ) @ ( H @ Y4 ) ) )
       => ( ( groups4541462559716669496nt_nat @ ( comp_int_nat_int @ H @ G ) @ A3 )
          = ( H @ ( groups4538972089207619220nt_int @ G @ A3 ) ) ) ) ) ).

% sum_comp_morphism
thf(fact_5632_sum__comp__morphism,axiom,
    ! [H: int > code_integer,G: int > int,A3: set_int] :
      ( ( ( H @ zero_zero_int )
        = zero_z3403309356797280102nteger )
     => ( ! [X5: int,Y4: int] :
            ( ( H @ ( plus_plus_int @ X5 @ Y4 ) )
            = ( plus_p5714425477246183910nteger @ ( H @ X5 ) @ ( H @ Y4 ) ) )
       => ( ( groups7873554091576472773nteger @ ( comp_i1585864551200866970er_int @ H @ G ) @ A3 )
          = ( H @ ( groups4538972089207619220nt_int @ G @ A3 ) ) ) ) ) ).

% sum_comp_morphism
thf(fact_5633_sum__comp__morphism,axiom,
    ! [H: int > rat,G: int > int,A3: set_int] :
      ( ( ( H @ zero_zero_int )
        = zero_zero_rat )
     => ( ! [X5: int,Y4: int] :
            ( ( H @ ( plus_plus_int @ X5 @ Y4 ) )
            = ( plus_plus_rat @ ( H @ X5 ) @ ( H @ Y4 ) ) )
       => ( ( groups3906332499630173760nt_rat @ ( comp_int_rat_int @ H @ G ) @ A3 )
          = ( H @ ( groups4538972089207619220nt_int @ G @ A3 ) ) ) ) ) ).

% sum_comp_morphism
thf(fact_5634_sum__comp__morphism,axiom,
    ! [H: int > code_natural,G: int > int,A3: set_int] :
      ( ( ( H @ zero_zero_int )
        = zero_z2226904508553997617atural )
     => ( ! [X5: int,Y4: int] :
            ( ( H @ ( plus_plus_int @ X5 @ Y4 ) )
            = ( plus_p4538020629002901425atural @ ( H @ X5 ) @ ( H @ Y4 ) ) )
       => ( ( groups6697149243333190288atural @ ( comp_i6850693561888474213al_int @ H @ G ) @ A3 )
          = ( H @ ( groups4538972089207619220nt_int @ G @ A3 ) ) ) ) ) ).

% sum_comp_morphism
thf(fact_5635_sum__comp__morphism,axiom,
    ! [H: int > nat,G: nat > int,A3: set_nat] :
      ( ( ( H @ zero_zero_int )
        = zero_zero_nat )
     => ( ! [X5: int,Y4: int] :
            ( ( H @ ( plus_plus_int @ X5 @ Y4 ) )
            = ( plus_plus_nat @ ( H @ X5 ) @ ( H @ Y4 ) ) )
       => ( ( groups3542108847815614940at_nat @ ( comp_int_nat_nat @ H @ G ) @ A3 )
          = ( H @ ( groups3539618377306564664at_int @ G @ A3 ) ) ) ) ) ).

% sum_comp_morphism
thf(fact_5636_sum__comp__morphism,axiom,
    ! [H: code_integer > nat,G: nat > code_integer,A3: set_nat] :
      ( ( ( H @ zero_z3403309356797280102nteger )
        = zero_zero_nat )
     => ( ! [X5: code_integer,Y4: code_integer] :
            ( ( H @ ( plus_p5714425477246183910nteger @ X5 @ Y4 ) )
            = ( plus_plus_nat @ ( H @ X5 ) @ ( H @ Y4 ) ) )
       => ( ( groups3542108847815614940at_nat @ ( comp_C4049556595663050210at_nat @ H @ G ) @ A3 )
          = ( H @ ( groups7501900531339628137nteger @ G @ A3 ) ) ) ) ) ).

% sum_comp_morphism
thf(fact_5637_fst__diag__fst,axiom,
    ( ( comp_P1567445206330693457at_nat @ product_fst_nat_nat
      @ ( comp_n829915685812334579at_nat
        @ ^ [X4: nat] : ( product_Pair_nat_nat @ X4 @ X4 )
        @ product_fst_nat_nat ) )
    = product_fst_nat_nat ) ).

% fst_diag_fst
thf(fact_5638_fst__diag__fst,axiom,
    ( ( comp_P5356232565778667509nt_int @ product_fst_int_int
      @ ( comp_i5941103828406351439nt_int
        @ ^ [X4: int] : ( product_Pair_int_int @ X4 @ X4 )
        @ product_fst_int_int ) )
    = product_fst_int_int ) ).

% fst_diag_fst
thf(fact_5639_choose__odd__sum,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) )
          @ ( groups7501900531339628137nteger
            @ ^ [I2: nat] :
                ( if_Code_integer
                @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 )
                @ ( semiri4939895301339042750nteger @ ( binomial @ N @ I2 ) )
                @ zero_z3403309356797280102nteger )
            @ ( set_ord_atMost_nat @ N ) ) )
        = ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) ) ) ).

% choose_odd_sum
thf(fact_5640_choose__odd__sum,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) )
          @ ( groups2906978787729119204at_rat
            @ ^ [I2: nat] :
                ( if_rat
                @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 )
                @ ( semiri681578069525770553at_rat @ ( binomial @ N @ I2 ) )
                @ zero_zero_rat )
            @ ( set_ord_atMost_nat @ N ) ) )
        = ( power_power_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ N ) ) ) ).

% choose_odd_sum
thf(fact_5641_choose__odd__sum,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) )
          @ ( groups3539618377306564664at_int
            @ ^ [I2: nat] :
                ( if_int
                @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 )
                @ ( semiri1314217659103216013at_int @ ( binomial @ N @ I2 ) )
                @ zero_zero_int )
            @ ( set_ord_atMost_nat @ N ) ) )
        = ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ).

% choose_odd_sum
thf(fact_5642_choose__even__sum,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) )
          @ ( groups7501900531339628137nteger
            @ ^ [I2: nat] : ( if_Code_integer @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) @ ( semiri4939895301339042750nteger @ ( binomial @ N @ I2 ) ) @ zero_z3403309356797280102nteger )
            @ ( set_ord_atMost_nat @ N ) ) )
        = ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) ) ) ).

% choose_even_sum
thf(fact_5643_choose__even__sum,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) )
          @ ( groups2906978787729119204at_rat
            @ ^ [I2: nat] : ( if_rat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) @ ( semiri681578069525770553at_rat @ ( binomial @ N @ I2 ) ) @ zero_zero_rat )
            @ ( set_ord_atMost_nat @ N ) ) )
        = ( power_power_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ N ) ) ) ).

% choose_even_sum
thf(fact_5644_choose__even__sum,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) )
          @ ( groups3539618377306564664at_int
            @ ^ [I2: nat] : ( if_int @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) @ ( semiri1314217659103216013at_int @ ( binomial @ N @ I2 ) ) @ zero_zero_int )
            @ ( set_ord_atMost_nat @ N ) ) )
        = ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ).

% choose_even_sum
thf(fact_5645_gbinomial__partial__row__sum,axiom,
    ! [A: rat,M: nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( times_times_rat @ ( gbinomial_rat @ A @ K3 ) @ ( minus_minus_rat @ ( divide_divide_rat @ A @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) @ ( semiri681578069525770553at_rat @ K3 ) ) )
        @ ( set_ord_atMost_nat @ M ) )
      = ( times_times_rat @ ( divide_divide_rat @ ( plus_plus_rat @ ( semiri681578069525770553at_rat @ M ) @ one_one_rat ) @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) @ ( gbinomial_rat @ A @ ( plus_plus_nat @ M @ one_one_nat ) ) ) ) ).

% gbinomial_partial_row_sum
thf(fact_5646_sum__gp,axiom,
    ! [N: nat,M: nat,X: rat] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = zero_zero_rat ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( ( X = one_one_rat )
           => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_or1269000886237332187st_nat @ M @ N ) )
              = ( semiri681578069525770553at_rat @ ( minus_minus_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ M ) ) ) )
          & ( ( X != one_one_rat )
           => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_or1269000886237332187st_nat @ M @ N ) )
              = ( divide_divide_rat @ ( minus_minus_rat @ ( power_power_rat @ X @ M ) @ ( power_power_rat @ X @ ( suc @ N ) ) ) @ ( minus_minus_rat @ one_one_rat @ X ) ) ) ) ) ) ) ).

% sum_gp
thf(fact_5647_gbinomial__r__part__sum,axiom,
    ! [M: nat] :
      ( ( groups2906978787729119204at_rat @ ( gbinomial_rat @ ( plus_plus_rat @ ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ ( semiri681578069525770553at_rat @ M ) ) @ one_one_rat ) ) @ ( set_ord_atMost_nat @ M ) )
      = ( power_power_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) ) ) ).

% gbinomial_r_part_sum
thf(fact_5648_sum_OatMost__Suc,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_ord_atMost_nat @ ( suc @ N ) ) )
      = ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_ord_atMost_nat @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ).

% sum.atMost_Suc
thf(fact_5649_sum_OatMost__Suc,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_ord_atMost_nat @ ( suc @ N ) ) )
      = ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_ord_atMost_nat @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ).

% sum.atMost_Suc
thf(fact_5650_sum_OatMost__Suc,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_ord_atMost_nat @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_ord_atMost_nat @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ).

% sum.atMost_Suc
thf(fact_5651_sum_Ocl__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > int] :
      ( ( ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = zero_zero_int ) )
      & ( ~ ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ) ) ).

% sum.cl_ivl_Suc
thf(fact_5652_sum_Ocl__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > code_integer] :
      ( ( ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups7501900531339628137nteger @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = zero_z3403309356797280102nteger ) )
      & ( ~ ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups7501900531339628137nteger @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = ( plus_p5714425477246183910nteger @ ( groups7501900531339628137nteger @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ) ) ).

% sum.cl_ivl_Suc
thf(fact_5653_sum_Ocl__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > rat] :
      ( ( ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = zero_zero_rat ) )
      & ( ~ ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ) ) ).

% sum.cl_ivl_Suc
thf(fact_5654_sum_Ocl__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > code_natural] :
      ( ( ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups6325495683096345652atural @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = zero_z2226904508553997617atural ) )
      & ( ~ ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups6325495683096345652atural @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = ( plus_p4538020629002901425atural @ ( groups6325495683096345652atural @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ) ) ).

% sum.cl_ivl_Suc
thf(fact_5655_sum_Ocl__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > nat] :
      ( ( ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = zero_zero_nat ) )
      & ( ~ ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ) ) ).

% sum.cl_ivl_Suc
thf(fact_5656_atMost__atLeast0,axiom,
    ( set_ord_atMost_nat
    = ( set_or1269000886237332187st_nat @ zero_zero_nat ) ) ).

% atMost_atLeast0
thf(fact_5657_atMost__def,axiom,
    ( set_or2762583123196137896at_nat
    = ( ^ [U2: set_Pr1261947904930325089at_nat] :
          ( collec5514110066124741708at_nat
          @ ^ [X4: set_Pr1261947904930325089at_nat] : ( ord_le3146513528884898305at_nat @ X4 @ U2 ) ) ) ) ).

% atMost_def
thf(fact_5658_atMost__def,axiom,
    ( set_or2459421552957432928nt_int
    = ( ^ [U2: set_Pr958786334691620121nt_int] :
          ( collec5210948495886036740nt_int
          @ ^ [X4: set_Pr958786334691620121nt_int] : ( ord_le2843351958646193337nt_int @ X4 @ U2 ) ) ) ) ).

% atMost_def
thf(fact_5659_atMost__def,axiom,
    ( set_or4236626031148496127et_nat
    = ( ^ [U2: set_nat] :
          ( collect_set_nat
          @ ^ [X4: set_nat] : ( ord_less_eq_set_nat @ X4 @ U2 ) ) ) ) ).

% atMost_def
thf(fact_5660_atMost__def,axiom,
    ( set_ord_atMost_rat
    = ( ^ [U2: rat] :
          ( collect_rat
          @ ^ [X4: rat] : ( ord_less_eq_rat @ X4 @ U2 ) ) ) ) ).

% atMost_def
thf(fact_5661_atMost__def,axiom,
    ( set_ord_atMost_num
    = ( ^ [U2: num] :
          ( collect_num
          @ ^ [X4: num] : ( ord_less_eq_num @ X4 @ U2 ) ) ) ) ).

% atMost_def
thf(fact_5662_atMost__def,axiom,
    ( set_ord_atMost_int
    = ( ^ [U2: int] :
          ( collect_int
          @ ^ [X4: int] : ( ord_less_eq_int @ X4 @ U2 ) ) ) ) ).

% atMost_def
thf(fact_5663_atMost__def,axiom,
    ( set_ord_atMost_nat
    = ( ^ [U2: nat] :
          ( collect_nat
          @ ^ [X4: nat] : ( ord_less_eq_nat @ X4 @ U2 ) ) ) ) ).

% atMost_def
thf(fact_5664_sum_OatLeast__Suc__atMost__Suc__shift,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups3542108847815614940at_nat @ ( comp_nat_nat_nat @ G @ suc ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% sum.atLeast_Suc_atMost_Suc_shift
thf(fact_5665_sum_OatLeastAtMost__shift__bounds,axiom,
    ! [G: nat > nat,M: nat,K: nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups3542108847815614940at_nat @ ( comp_nat_nat_nat @ G @ ( plus_plus_nat @ K ) ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% sum.atLeastAtMost_shift_bounds
thf(fact_5666_sum_Oshift__bounds__cl__Suc__ivl,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% sum.shift_bounds_cl_Suc_ivl
thf(fact_5667_sum_Oshift__bounds__cl__nat__ivl,axiom,
    ! [G: nat > nat,M: nat,K: nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( G @ ( plus_plus_nat @ I2 @ K ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% sum.shift_bounds_cl_nat_ivl
thf(fact_5668_sum__power__shift,axiom,
    ! [M: nat,N: nat,X: int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3539618377306564664at_int @ ( power_power_int @ X ) @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( times_times_int @ ( power_power_int @ X @ M ) @ ( groups3539618377306564664at_int @ ( power_power_int @ X ) @ ( set_ord_atMost_nat @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ).

% sum_power_shift
thf(fact_5669_sum__power__shift,axiom,
    ! [M: nat,N: nat,X: code_integer] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups7501900531339628137nteger @ ( power_8256067586552552935nteger @ X ) @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ X @ M ) @ ( groups7501900531339628137nteger @ ( power_8256067586552552935nteger @ X ) @ ( set_ord_atMost_nat @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ).

% sum_power_shift
thf(fact_5670_sum__power__shift,axiom,
    ! [M: nat,N: nat,X: rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( times_times_rat @ ( power_power_rat @ X @ M ) @ ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_ord_atMost_nat @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ).

% sum_power_shift
thf(fact_5671_sum_OatLeastAtMost__rev,axiom,
    ! [G: nat > nat,N: nat,M: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ N @ M ) )
      = ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ N @ M ) ) ) ).

% sum.atLeastAtMost_rev
thf(fact_5672_sum__choose__upper,axiom,
    ! [M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( binomial @ K3 @ M )
        @ ( set_ord_atMost_nat @ N ) )
      = ( binomial @ ( suc @ N ) @ ( suc @ M ) ) ) ).

% sum_choose_upper
thf(fact_5673_sum__shift__lb__Suc0__0,axiom,
    ! [F: nat > int,K: nat] :
      ( ( ( F @ zero_zero_nat )
        = zero_zero_int )
     => ( ( groups3539618377306564664at_int @ F @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ K ) )
        = ( groups3539618377306564664at_int @ F @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ K ) ) ) ) ).

% sum_shift_lb_Suc0_0
thf(fact_5674_sum__shift__lb__Suc0__0,axiom,
    ! [F: nat > code_integer,K: nat] :
      ( ( ( F @ zero_zero_nat )
        = zero_z3403309356797280102nteger )
     => ( ( groups7501900531339628137nteger @ F @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ K ) )
        = ( groups7501900531339628137nteger @ F @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ K ) ) ) ) ).

% sum_shift_lb_Suc0_0
thf(fact_5675_sum__shift__lb__Suc0__0,axiom,
    ! [F: nat > rat,K: nat] :
      ( ( ( F @ zero_zero_nat )
        = zero_zero_rat )
     => ( ( groups2906978787729119204at_rat @ F @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ K ) )
        = ( groups2906978787729119204at_rat @ F @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ K ) ) ) ) ).

% sum_shift_lb_Suc0_0
thf(fact_5676_sum__shift__lb__Suc0__0,axiom,
    ! [F: nat > code_natural,K: nat] :
      ( ( ( F @ zero_zero_nat )
        = zero_z2226904508553997617atural )
     => ( ( groups6325495683096345652atural @ F @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ K ) )
        = ( groups6325495683096345652atural @ F @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ K ) ) ) ) ).

% sum_shift_lb_Suc0_0
thf(fact_5677_sum__shift__lb__Suc0__0,axiom,
    ! [F: nat > nat,K: nat] :
      ( ( ( F @ zero_zero_nat )
        = zero_zero_nat )
     => ( ( groups3542108847815614940at_nat @ F @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ K ) )
        = ( groups3542108847815614940at_nat @ F @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ K ) ) ) ) ).

% sum_shift_lb_Suc0_0
thf(fact_5678_sum_OatLeast0__atMost__Suc__shift,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_rat @ ( G @ zero_zero_nat ) @ ( groups2906978787729119204at_rat @ ( comp_nat_rat_nat @ G @ suc ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ) ).

% sum.atLeast0_atMost_Suc_shift
thf(fact_5679_sum_OatLeast0__atMost__Suc__shift,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_int @ ( G @ zero_zero_nat ) @ ( groups3539618377306564664at_int @ ( comp_nat_int_nat @ G @ suc ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ) ).

% sum.atLeast0_atMost_Suc_shift
thf(fact_5680_sum_OatLeast0__atMost__Suc__shift,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( G @ zero_zero_nat ) @ ( groups3542108847815614940at_nat @ ( comp_nat_nat_nat @ G @ suc ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ) ).

% sum.atLeast0_atMost_Suc_shift
thf(fact_5681_sum_OatLeast0__atMost__Suc,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ).

% sum.atLeast0_atMost_Suc
thf(fact_5682_sum_OatLeast0__atMost__Suc,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ).

% sum.atLeast0_atMost_Suc
thf(fact_5683_sum_OatLeast0__atMost__Suc,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ).

% sum.atLeast0_atMost_Suc
thf(fact_5684_sum_OatLeast__Suc__atMost,axiom,
    ! [M: nat,N: nat,G: nat > rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( plus_plus_rat @ ( G @ M ) @ ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ N ) ) ) ) ) ).

% sum.atLeast_Suc_atMost
thf(fact_5685_sum_OatLeast__Suc__atMost,axiom,
    ! [M: nat,N: nat,G: nat > int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( plus_plus_int @ ( G @ M ) @ ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ N ) ) ) ) ) ).

% sum.atLeast_Suc_atMost
thf(fact_5686_sum_OatLeast__Suc__atMost,axiom,
    ! [M: nat,N: nat,G: nat > nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( plus_plus_nat @ ( G @ M ) @ ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ N ) ) ) ) ) ).

% sum.atLeast_Suc_atMost
thf(fact_5687_sum_Onat__ivl__Suc_H,axiom,
    ! [M: nat,N: nat,G: nat > rat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
        = ( plus_plus_rat @ ( G @ ( suc @ N ) ) @ ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ) ).

% sum.nat_ivl_Suc'
thf(fact_5688_sum_Onat__ivl__Suc_H,axiom,
    ! [M: nat,N: nat,G: nat > int] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
        = ( plus_plus_int @ ( G @ ( suc @ N ) ) @ ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ) ).

% sum.nat_ivl_Suc'
thf(fact_5689_sum_Onat__ivl__Suc_H,axiom,
    ! [M: nat,N: nat,G: nat > nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
        = ( plus_plus_nat @ ( G @ ( suc @ N ) ) @ ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ) ).

% sum.nat_ivl_Suc'
thf(fact_5690_sum_OatMost__Suc__shift,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_ord_atMost_nat @ ( suc @ N ) ) )
      = ( plus_plus_rat @ ( G @ zero_zero_nat )
        @ ( groups2906978787729119204at_rat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% sum.atMost_Suc_shift
thf(fact_5691_sum_OatMost__Suc__shift,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_ord_atMost_nat @ ( suc @ N ) ) )
      = ( plus_plus_int @ ( G @ zero_zero_nat )
        @ ( groups3539618377306564664at_int
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% sum.atMost_Suc_shift
thf(fact_5692_sum_OatMost__Suc__shift,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_ord_atMost_nat @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( G @ zero_zero_nat )
        @ ( groups3542108847815614940at_nat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% sum.atMost_Suc_shift
thf(fact_5693_sum__telescope,axiom,
    ! [F: nat > int,I: nat] :
      ( ( groups3539618377306564664at_int
        @ ^ [I2: nat] : ( minus_minus_int @ ( F @ I2 ) @ ( F @ ( suc @ I2 ) ) )
        @ ( set_ord_atMost_nat @ I ) )
      = ( minus_minus_int @ ( F @ zero_zero_nat ) @ ( F @ ( suc @ I ) ) ) ) ).

% sum_telescope
thf(fact_5694_sum__telescope,axiom,
    ! [F: nat > code_integer,I: nat] :
      ( ( groups7501900531339628137nteger
        @ ^ [I2: nat] : ( minus_8373710615458151222nteger @ ( F @ I2 ) @ ( F @ ( suc @ I2 ) ) )
        @ ( set_ord_atMost_nat @ I ) )
      = ( minus_8373710615458151222nteger @ ( F @ zero_zero_nat ) @ ( F @ ( suc @ I ) ) ) ) ).

% sum_telescope
thf(fact_5695_sum__telescope,axiom,
    ! [F: nat > rat,I: nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [I2: nat] : ( minus_minus_rat @ ( F @ I2 ) @ ( F @ ( suc @ I2 ) ) )
        @ ( set_ord_atMost_nat @ I ) )
      = ( minus_minus_rat @ ( F @ zero_zero_nat ) @ ( F @ ( suc @ I ) ) ) ) ).

% sum_telescope
thf(fact_5696_sum_OSuc__reindex__ivl,axiom,
    ! [M: nat,N: nat,G: nat > rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) )
        = ( plus_plus_rat @ ( G @ M )
          @ ( groups2906978787729119204at_rat
            @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ) ).

% sum.Suc_reindex_ivl
thf(fact_5697_sum_OSuc__reindex__ivl,axiom,
    ! [M: nat,N: nat,G: nat > int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) )
        = ( plus_plus_int @ ( G @ M )
          @ ( groups3539618377306564664at_int
            @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ) ).

% sum.Suc_reindex_ivl
thf(fact_5698_sum_OSuc__reindex__ivl,axiom,
    ! [M: nat,N: nat,G: nat > nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) )
        = ( plus_plus_nat @ ( G @ M )
          @ ( groups3542108847815614940at_nat
            @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ) ).

% sum.Suc_reindex_ivl
thf(fact_5699_sum__Suc__diff,axiom,
    ! [M: nat,N: nat,F: nat > int] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ( groups3539618377306564664at_int
          @ ^ [I2: nat] : ( minus_minus_int @ ( F @ ( suc @ I2 ) ) @ ( F @ I2 ) )
          @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( minus_minus_int @ ( F @ ( suc @ N ) ) @ ( F @ M ) ) ) ) ).

% sum_Suc_diff
thf(fact_5700_sum__Suc__diff,axiom,
    ! [M: nat,N: nat,F: nat > code_integer] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ( groups7501900531339628137nteger
          @ ^ [I2: nat] : ( minus_8373710615458151222nteger @ ( F @ ( suc @ I2 ) ) @ ( F @ I2 ) )
          @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( minus_8373710615458151222nteger @ ( F @ ( suc @ N ) ) @ ( F @ M ) ) ) ) ).

% sum_Suc_diff
thf(fact_5701_sum__Suc__diff,axiom,
    ! [M: nat,N: nat,F: nat > rat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ( groups2906978787729119204at_rat
          @ ^ [I2: nat] : ( minus_minus_rat @ ( F @ ( suc @ I2 ) ) @ ( F @ I2 ) )
          @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( minus_minus_rat @ ( F @ ( suc @ N ) ) @ ( F @ M ) ) ) ) ).

% sum_Suc_diff
thf(fact_5702_sum_OatLeast__atMost__pred__shift,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ( comp_nat_nat_nat @ G
          @ ^ [N5: nat] : ( minus_minus_nat @ N5 @ ( suc @ zero_zero_nat ) ) )
        @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% sum.atLeast_atMost_pred_shift
thf(fact_5703_sum__choose__lower,axiom,
    ! [R: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( binomial @ ( plus_plus_nat @ R @ K3 ) @ K3 )
        @ ( set_ord_atMost_nat @ N ) )
      = ( binomial @ ( suc @ ( plus_plus_nat @ R @ N ) ) @ N ) ) ).

% sum_choose_lower
thf(fact_5704_choose__rising__sum_I1_J,axiom,
    ! [N: nat,M: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [J3: nat] : ( binomial @ ( plus_plus_nat @ N @ J3 ) @ N )
        @ ( set_ord_atMost_nat @ M ) )
      = ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ N @ M ) @ one_one_nat ) @ ( plus_plus_nat @ N @ one_one_nat ) ) ) ).

% choose_rising_sum(1)
thf(fact_5705_choose__rising__sum_I2_J,axiom,
    ! [N: nat,M: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [J3: nat] : ( binomial @ ( plus_plus_nat @ N @ J3 ) @ N )
        @ ( set_ord_atMost_nat @ M ) )
      = ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ N @ M ) @ one_one_nat ) @ M ) ) ).

% choose_rising_sum(2)
thf(fact_5706_sum__atLeastAtMost__code,axiom,
    ! [F: nat > int,A: nat,B: nat] :
      ( ( groups3539618377306564664at_int @ F @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_fo2581907887559384638at_int
        @ ^ [A4: nat] : ( plus_plus_int @ ( F @ A4 ) )
        @ A
        @ B
        @ zero_zero_int ) ) ).

% sum_atLeastAtMost_code
thf(fact_5707_sum__atLeastAtMost__code,axiom,
    ! [F: nat > code_integer,A: nat,B: nat] :
      ( ( groups7501900531339628137nteger @ F @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_fo1084959871951514735nteger
        @ ^ [A4: nat] : ( plus_p5714425477246183910nteger @ ( F @ A4 ) )
        @ A
        @ B
        @ zero_z3403309356797280102nteger ) ) ).

% sum_atLeastAtMost_code
thf(fact_5708_sum__atLeastAtMost__code,axiom,
    ! [F: nat > rat,A: nat,B: nat] :
      ( ( groups2906978787729119204at_rat @ F @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_fo1949268297981939178at_rat
        @ ^ [A4: nat] : ( plus_plus_rat @ ( F @ A4 ) )
        @ A
        @ B
        @ zero_zero_rat ) ) ).

% sum_atLeastAtMost_code
thf(fact_5709_sum__atLeastAtMost__code,axiom,
    ! [F: nat > code_natural,A: nat,B: nat] :
      ( ( groups6325495683096345652atural @ F @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_fo9131927060563008058atural
        @ ^ [A4: nat] : ( plus_p4538020629002901425atural @ ( F @ A4 ) )
        @ A
        @ B
        @ zero_z2226904508553997617atural ) ) ).

% sum_atLeastAtMost_code
thf(fact_5710_sum__atLeastAtMost__code,axiom,
    ! [F: nat > nat,A: nat,B: nat] :
      ( ( groups3542108847815614940at_nat @ F @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_fo2584398358068434914at_nat
        @ ^ [A4: nat] : ( plus_plus_nat @ ( F @ A4 ) )
        @ A
        @ B
        @ zero_zero_nat ) ) ).

% sum_atLeastAtMost_code
thf(fact_5711_subset__CollectI,axiom,
    ! [B3: set_se7855581050983116737at_nat,A3: set_se7855581050983116737at_nat,Q: set_Pr1261947904930325089at_nat > $o,P: set_Pr1261947904930325089at_nat > $o] :
      ( ( ord_le2077887516847798113at_nat @ B3 @ A3 )
     => ( ! [X5: set_Pr1261947904930325089at_nat] :
            ( ( member2643936169264416010at_nat @ X5 @ B3 )
           => ( ( Q @ X5 )
             => ( P @ X5 ) ) )
       => ( ord_le2077887516847798113at_nat
          @ ( collec5514110066124741708at_nat
            @ ^ [X4: set_Pr1261947904930325089at_nat] :
                ( ( member2643936169264416010at_nat @ X4 @ B3 )
                & ( Q @ X4 ) ) )
          @ ( collec5514110066124741708at_nat
            @ ^ [X4: set_Pr1261947904930325089at_nat] :
                ( ( member2643936169264416010at_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) ) ) ) ).

% subset_CollectI
thf(fact_5712_subset__CollectI,axiom,
    ! [B3: set_se6260736226359567993nt_int,A3: set_se6260736226359567993nt_int,Q: set_Pr958786334691620121nt_int > $o,P: set_Pr958786334691620121nt_int > $o] :
      ( ( ord_le483042692224249369nt_int @ B3 @ A3 )
     => ( ! [X5: set_Pr958786334691620121nt_int] :
            ( ( member2340774599025711042nt_int @ X5 @ B3 )
           => ( ( Q @ X5 )
             => ( P @ X5 ) ) )
       => ( ord_le483042692224249369nt_int
          @ ( collec5210948495886036740nt_int
            @ ^ [X4: set_Pr958786334691620121nt_int] :
                ( ( member2340774599025711042nt_int @ X4 @ B3 )
                & ( Q @ X4 ) ) )
          @ ( collec5210948495886036740nt_int
            @ ^ [X4: set_Pr958786334691620121nt_int] :
                ( ( member2340774599025711042nt_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) ) ) ) ).

% subset_CollectI
thf(fact_5713_subset__CollectI,axiom,
    ! [B3: set_set_nat,A3: set_set_nat,Q: set_nat > $o,P: set_nat > $o] :
      ( ( ord_le6893508408891458716et_nat @ B3 @ A3 )
     => ( ! [X5: set_nat] :
            ( ( member_set_nat @ X5 @ B3 )
           => ( ( Q @ X5 )
             => ( P @ X5 ) ) )
       => ( ord_le6893508408891458716et_nat
          @ ( collect_set_nat
            @ ^ [X4: set_nat] :
                ( ( member_set_nat @ X4 @ B3 )
                & ( Q @ X4 ) ) )
          @ ( collect_set_nat
            @ ^ [X4: set_nat] :
                ( ( member_set_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) ) ) ) ).

% subset_CollectI
thf(fact_5714_subset__CollectI,axiom,
    ! [B3: set_int,A3: set_int,Q: int > $o,P: int > $o] :
      ( ( ord_less_eq_set_int @ B3 @ A3 )
     => ( ! [X5: int] :
            ( ( member_int @ X5 @ B3 )
           => ( ( Q @ X5 )
             => ( P @ X5 ) ) )
       => ( ord_less_eq_set_int
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ B3 )
                & ( Q @ X4 ) ) )
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) ) ) ) ).

% subset_CollectI
thf(fact_5715_subset__CollectI,axiom,
    ! [B3: set_nat,A3: set_nat,Q: nat > $o,P: nat > $o] :
      ( ( ord_less_eq_set_nat @ B3 @ A3 )
     => ( ! [X5: nat] :
            ( ( member_nat @ X5 @ B3 )
           => ( ( Q @ X5 )
             => ( P @ X5 ) ) )
       => ( ord_less_eq_set_nat
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ B3 )
                & ( Q @ X4 ) ) )
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) ) ) ) ).

% subset_CollectI
thf(fact_5716_subset__Collect__iff,axiom,
    ! [B3: set_se7855581050983116737at_nat,A3: set_se7855581050983116737at_nat,P: set_Pr1261947904930325089at_nat > $o] :
      ( ( ord_le2077887516847798113at_nat @ B3 @ A3 )
     => ( ( ord_le2077887516847798113at_nat @ B3
          @ ( collec5514110066124741708at_nat
            @ ^ [X4: set_Pr1261947904930325089at_nat] :
                ( ( member2643936169264416010at_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( ! [X4: set_Pr1261947904930325089at_nat] :
              ( ( member2643936169264416010at_nat @ X4 @ B3 )
             => ( P @ X4 ) ) ) ) ) ).

% subset_Collect_iff
thf(fact_5717_subset__Collect__iff,axiom,
    ! [B3: set_se6260736226359567993nt_int,A3: set_se6260736226359567993nt_int,P: set_Pr958786334691620121nt_int > $o] :
      ( ( ord_le483042692224249369nt_int @ B3 @ A3 )
     => ( ( ord_le483042692224249369nt_int @ B3
          @ ( collec5210948495886036740nt_int
            @ ^ [X4: set_Pr958786334691620121nt_int] :
                ( ( member2340774599025711042nt_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( ! [X4: set_Pr958786334691620121nt_int] :
              ( ( member2340774599025711042nt_int @ X4 @ B3 )
             => ( P @ X4 ) ) ) ) ) ).

% subset_Collect_iff
thf(fact_5718_subset__Collect__iff,axiom,
    ! [B3: set_set_nat,A3: set_set_nat,P: set_nat > $o] :
      ( ( ord_le6893508408891458716et_nat @ B3 @ A3 )
     => ( ( ord_le6893508408891458716et_nat @ B3
          @ ( collect_set_nat
            @ ^ [X4: set_nat] :
                ( ( member_set_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( ! [X4: set_nat] :
              ( ( member_set_nat @ X4 @ B3 )
             => ( P @ X4 ) ) ) ) ) ).

% subset_Collect_iff
thf(fact_5719_subset__Collect__iff,axiom,
    ! [B3: set_int,A3: set_int,P: int > $o] :
      ( ( ord_less_eq_set_int @ B3 @ A3 )
     => ( ( ord_less_eq_set_int @ B3
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( ! [X4: int] :
              ( ( member_int @ X4 @ B3 )
             => ( P @ X4 ) ) ) ) ) ).

% subset_Collect_iff
thf(fact_5720_subset__Collect__iff,axiom,
    ! [B3: set_nat,A3: set_nat,P: nat > $o] :
      ( ( ord_less_eq_set_nat @ B3 @ A3 )
     => ( ( ord_less_eq_set_nat @ B3
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( ! [X4: nat] :
              ( ( member_nat @ X4 @ B3 )
             => ( P @ X4 ) ) ) ) ) ).

% subset_Collect_iff
thf(fact_5721_sum_OatLeastAtMost__shift__0,axiom,
    ! [M: nat,N: nat,G: nat > nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( groups3542108847815614940at_nat @ ( comp_nat_nat_nat @ G @ ( plus_plus_nat @ M ) ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% sum.atLeastAtMost_shift_0
thf(fact_5722_sum_Oub__add__nat,axiom,
    ! [M: nat,N: nat,G: nat > rat,P4: nat] :
      ( ( ord_less_eq_nat @ M @ ( plus_plus_nat @ N @ one_one_nat ) )
     => ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ ( plus_plus_nat @ N @ P4 ) ) )
        = ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ ( plus_plus_nat @ N @ P4 ) ) ) ) ) ) ).

% sum.ub_add_nat
thf(fact_5723_sum_Oub__add__nat,axiom,
    ! [M: nat,N: nat,G: nat > int,P4: nat] :
      ( ( ord_less_eq_nat @ M @ ( plus_plus_nat @ N @ one_one_nat ) )
     => ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ ( plus_plus_nat @ N @ P4 ) ) )
        = ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ ( plus_plus_nat @ N @ P4 ) ) ) ) ) ) ).

% sum.ub_add_nat
thf(fact_5724_sum_Oub__add__nat,axiom,
    ! [M: nat,N: nat,G: nat > nat,P4: nat] :
      ( ( ord_less_eq_nat @ M @ ( plus_plus_nat @ N @ one_one_nat ) )
     => ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ ( plus_plus_nat @ N @ P4 ) ) )
        = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ ( plus_plus_nat @ N @ P4 ) ) ) ) ) ) ).

% sum.ub_add_nat
thf(fact_5725_gbinomial__parallel__sum,axiom,
    ! [A: rat,N: nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( gbinomial_rat @ ( plus_plus_rat @ A @ ( semiri681578069525770553at_rat @ K3 ) ) @ K3 )
        @ ( set_ord_atMost_nat @ N ) )
      = ( gbinomial_rat @ ( plus_plus_rat @ ( plus_plus_rat @ A @ ( semiri681578069525770553at_rat @ N ) ) @ one_one_rat ) @ N ) ) ).

% gbinomial_parallel_sum
thf(fact_5726_sum_Otriangle__reindex__eq,axiom,
    ! [G: nat > nat > nat,N: nat] :
      ( ( groups977919841031483927at_nat @ ( produc6842872674320459806at_nat @ G )
        @ ( collec3392354462482085612at_nat
          @ ( produc6081775807080527818_nat_o
            @ ^ [I2: nat,J3: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ J3 ) @ N ) ) ) )
      = ( groups3542108847815614940at_nat
        @ ^ [K3: nat] :
            ( groups3542108847815614940at_nat
            @ ^ [I2: nat] : ( G @ I2 @ ( minus_minus_nat @ K3 @ I2 ) )
            @ ( set_ord_atMost_nat @ K3 ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% sum.triangle_reindex_eq
thf(fact_5727_sum__choose__diagonal,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3542108847815614940at_nat
          @ ^ [K3: nat] : ( binomial @ ( minus_minus_nat @ N @ K3 ) @ ( minus_minus_nat @ M @ K3 ) )
          @ ( set_ord_atMost_nat @ M ) )
        = ( binomial @ ( suc @ N ) @ M ) ) ) ).

% sum_choose_diagonal
thf(fact_5728_vandermonde,axiom,
    ! [M: nat,N: nat,R: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( times_times_nat @ ( binomial @ M @ K3 ) @ ( binomial @ N @ ( minus_minus_nat @ R @ K3 ) ) )
        @ ( set_ord_atMost_nat @ R ) )
      = ( binomial @ ( plus_plus_nat @ M @ N ) @ R ) ) ).

% vandermonde
thf(fact_5729_sum__gp__basic,axiom,
    ! [X: int,N: nat] :
      ( ( times_times_int @ ( minus_minus_int @ one_one_int @ X ) @ ( groups3539618377306564664at_int @ ( power_power_int @ X ) @ ( set_ord_atMost_nat @ N ) ) )
      = ( minus_minus_int @ one_one_int @ ( power_power_int @ X @ ( suc @ N ) ) ) ) ).

% sum_gp_basic
thf(fact_5730_sum__gp__basic,axiom,
    ! [X: code_integer,N: nat] :
      ( ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ one_one_Code_integer @ X ) @ ( groups7501900531339628137nteger @ ( power_8256067586552552935nteger @ X ) @ ( set_ord_atMost_nat @ N ) ) )
      = ( minus_8373710615458151222nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ X @ ( suc @ N ) ) ) ) ).

% sum_gp_basic
thf(fact_5731_sum__gp__basic,axiom,
    ! [X: rat,N: nat] :
      ( ( times_times_rat @ ( minus_minus_rat @ one_one_rat @ X ) @ ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_ord_atMost_nat @ N ) ) )
      = ( minus_minus_rat @ one_one_rat @ ( power_power_rat @ X @ ( suc @ N ) ) ) ) ).

% sum_gp_basic
thf(fact_5732_sum__natinterval__diff,axiom,
    ! [M: nat,N: nat,F: nat > int] :
      ( ( ( ord_less_eq_nat @ M @ N )
       => ( ( groups3539618377306564664at_int
            @ ^ [K3: nat] : ( minus_minus_int @ ( F @ K3 ) @ ( F @ ( plus_plus_nat @ K3 @ one_one_nat ) ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( minus_minus_int @ ( F @ M ) @ ( F @ ( plus_plus_nat @ N @ one_one_nat ) ) ) ) )
      & ( ~ ( ord_less_eq_nat @ M @ N )
       => ( ( groups3539618377306564664at_int
            @ ^ [K3: nat] : ( minus_minus_int @ ( F @ K3 ) @ ( F @ ( plus_plus_nat @ K3 @ one_one_nat ) ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = zero_zero_int ) ) ) ).

% sum_natinterval_diff
thf(fact_5733_sum__natinterval__diff,axiom,
    ! [M: nat,N: nat,F: nat > code_integer] :
      ( ( ( ord_less_eq_nat @ M @ N )
       => ( ( groups7501900531339628137nteger
            @ ^ [K3: nat] : ( minus_8373710615458151222nteger @ ( F @ K3 ) @ ( F @ ( plus_plus_nat @ K3 @ one_one_nat ) ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( minus_8373710615458151222nteger @ ( F @ M ) @ ( F @ ( plus_plus_nat @ N @ one_one_nat ) ) ) ) )
      & ( ~ ( ord_less_eq_nat @ M @ N )
       => ( ( groups7501900531339628137nteger
            @ ^ [K3: nat] : ( minus_8373710615458151222nteger @ ( F @ K3 ) @ ( F @ ( plus_plus_nat @ K3 @ one_one_nat ) ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = zero_z3403309356797280102nteger ) ) ) ).

% sum_natinterval_diff
thf(fact_5734_sum__natinterval__diff,axiom,
    ! [M: nat,N: nat,F: nat > rat] :
      ( ( ( ord_less_eq_nat @ M @ N )
       => ( ( groups2906978787729119204at_rat
            @ ^ [K3: nat] : ( minus_minus_rat @ ( F @ K3 ) @ ( F @ ( plus_plus_nat @ K3 @ one_one_nat ) ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( minus_minus_rat @ ( F @ M ) @ ( F @ ( plus_plus_nat @ N @ one_one_nat ) ) ) ) )
      & ( ~ ( ord_less_eq_nat @ M @ N )
       => ( ( groups2906978787729119204at_rat
            @ ^ [K3: nat] : ( minus_minus_rat @ ( F @ K3 ) @ ( F @ ( plus_plus_nat @ K3 @ one_one_nat ) ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = zero_zero_rat ) ) ) ).

% sum_natinterval_diff
thf(fact_5735_sum__telescope_H_H,axiom,
    ! [M: nat,N: nat,F: nat > int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3539618377306564664at_int
          @ ^ [K3: nat] : ( minus_minus_int @ ( F @ K3 ) @ ( F @ ( minus_minus_nat @ K3 @ one_one_nat ) ) )
          @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ N ) )
        = ( minus_minus_int @ ( F @ N ) @ ( F @ M ) ) ) ) ).

% sum_telescope''
thf(fact_5736_sum__telescope_H_H,axiom,
    ! [M: nat,N: nat,F: nat > code_integer] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups7501900531339628137nteger
          @ ^ [K3: nat] : ( minus_8373710615458151222nteger @ ( F @ K3 ) @ ( F @ ( minus_minus_nat @ K3 @ one_one_nat ) ) )
          @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ N ) )
        = ( minus_8373710615458151222nteger @ ( F @ N ) @ ( F @ M ) ) ) ) ).

% sum_telescope''
thf(fact_5737_sum__telescope_H_H,axiom,
    ! [M: nat,N: nat,F: nat > rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups2906978787729119204at_rat
          @ ^ [K3: nat] : ( minus_minus_rat @ ( F @ K3 ) @ ( F @ ( minus_minus_nat @ K3 @ one_one_nat ) ) )
          @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ N ) )
        = ( minus_minus_rat @ ( F @ N ) @ ( F @ M ) ) ) ) ).

% sum_telescope''
thf(fact_5738_choose__row__sum,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat @ ( binomial @ N ) @ ( set_ord_atMost_nat @ N ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% choose_row_sum
thf(fact_5739_binomial,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( power_power_nat @ ( plus_plus_nat @ A @ B ) @ N )
      = ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( times_times_nat @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ ( binomial @ N @ K3 ) ) @ ( power_power_nat @ A @ K3 ) ) @ ( power_power_nat @ B @ ( minus_minus_nat @ N @ K3 ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% binomial
thf(fact_5740_sum_Oin__pairs__0,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_ord_atMost_nat @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups2906978787729119204at_rat
        @ ^ [I2: nat] : ( plus_plus_rat @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% sum.in_pairs_0
thf(fact_5741_sum_Oin__pairs__0,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_ord_atMost_nat @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups3539618377306564664at_int
        @ ^ [I2: nat] : ( plus_plus_int @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% sum.in_pairs_0
thf(fact_5742_sum_Oin__pairs__0,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_ord_atMost_nat @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( plus_plus_nat @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% sum.in_pairs_0
thf(fact_5743_gbinomial__sum__lower__neg,axiom,
    ! [A: rat,M: nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( times_times_rat @ ( gbinomial_rat @ A @ K3 ) @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K3 ) )
        @ ( set_ord_atMost_nat @ M ) )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ M ) @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ M ) ) ) ).

% gbinomial_sum_lower_neg
thf(fact_5744_binomial__ring,axiom,
    ! [A: code_integer,B: code_integer,N: nat] :
      ( ( power_8256067586552552935nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ N )
      = ( groups7501900531339628137nteger
        @ ^ [K3: nat] : ( times_3573771949741848930nteger @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ ( binomial @ N @ K3 ) ) @ ( power_8256067586552552935nteger @ A @ K3 ) ) @ ( power_8256067586552552935nteger @ B @ ( minus_minus_nat @ N @ K3 ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% binomial_ring
thf(fact_5745_binomial__ring,axiom,
    ! [A: rat,B: rat,N: nat] :
      ( ( power_power_rat @ ( plus_plus_rat @ A @ B ) @ N )
      = ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( times_times_rat @ ( times_times_rat @ ( semiri681578069525770553at_rat @ ( binomial @ N @ K3 ) ) @ ( power_power_rat @ A @ K3 ) ) @ ( power_power_rat @ B @ ( minus_minus_nat @ N @ K3 ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% binomial_ring
thf(fact_5746_binomial__ring,axiom,
    ! [A: int,B: int,N: nat] :
      ( ( power_power_int @ ( plus_plus_int @ A @ B ) @ N )
      = ( groups3539618377306564664at_int
        @ ^ [K3: nat] : ( times_times_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ ( binomial @ N @ K3 ) ) @ ( power_power_int @ A @ K3 ) ) @ ( power_power_int @ B @ ( minus_minus_nat @ N @ K3 ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% binomial_ring
thf(fact_5747_binomial__ring,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( power_power_nat @ ( plus_plus_nat @ A @ B ) @ N )
      = ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( times_times_nat @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ ( binomial @ N @ K3 ) ) @ ( power_power_nat @ A @ K3 ) ) @ ( power_power_nat @ B @ ( minus_minus_nat @ N @ K3 ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% binomial_ring
thf(fact_5748_pochhammer__binomial__sum,axiom,
    ! [A: code_integer,B: code_integer,N: nat] :
      ( ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ N )
      = ( groups7501900531339628137nteger
        @ ^ [K3: nat] : ( times_3573771949741848930nteger @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ ( binomial @ N @ K3 ) ) @ ( comm_s8582702949713902594nteger @ A @ K3 ) ) @ ( comm_s8582702949713902594nteger @ B @ ( minus_minus_nat @ N @ K3 ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% pochhammer_binomial_sum
thf(fact_5749_pochhammer__binomial__sum,axiom,
    ! [A: rat,B: rat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ A @ B ) @ N )
      = ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( times_times_rat @ ( times_times_rat @ ( semiri681578069525770553at_rat @ ( binomial @ N @ K3 ) ) @ ( comm_s4028243227959126397er_rat @ A @ K3 ) ) @ ( comm_s4028243227959126397er_rat @ B @ ( minus_minus_nat @ N @ K3 ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% pochhammer_binomial_sum
thf(fact_5750_pochhammer__binomial__sum,axiom,
    ! [A: int,B: int,N: nat] :
      ( ( comm_s4660882817536571857er_int @ ( plus_plus_int @ A @ B ) @ N )
      = ( groups3539618377306564664at_int
        @ ^ [K3: nat] : ( times_times_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ ( binomial @ N @ K3 ) ) @ ( comm_s4660882817536571857er_int @ A @ K3 ) ) @ ( comm_s4660882817536571857er_int @ B @ ( minus_minus_nat @ N @ K3 ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% pochhammer_binomial_sum
thf(fact_5751_sum__gp__multiplied,axiom,
    ! [M: nat,N: nat,X: int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( times_times_int @ ( minus_minus_int @ one_one_int @ X ) @ ( groups3539618377306564664at_int @ ( power_power_int @ X ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) )
        = ( minus_minus_int @ ( power_power_int @ X @ M ) @ ( power_power_int @ X @ ( suc @ N ) ) ) ) ) ).

% sum_gp_multiplied
thf(fact_5752_sum__gp__multiplied,axiom,
    ! [M: nat,N: nat,X: code_integer] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ one_one_Code_integer @ X ) @ ( groups7501900531339628137nteger @ ( power_8256067586552552935nteger @ X ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) )
        = ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ X @ M ) @ ( power_8256067586552552935nteger @ X @ ( suc @ N ) ) ) ) ) ).

% sum_gp_multiplied
thf(fact_5753_sum__gp__multiplied,axiom,
    ! [M: nat,N: nat,X: rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( times_times_rat @ ( minus_minus_rat @ one_one_rat @ X ) @ ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) )
        = ( minus_minus_rat @ ( power_power_rat @ X @ M ) @ ( power_power_rat @ X @ ( suc @ N ) ) ) ) ) ).

% sum_gp_multiplied
thf(fact_5754_sum_Oin__pairs,axiom,
    ! [G: nat > rat,M: nat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups2906978787729119204at_rat
        @ ^ [I2: nat] : ( plus_plus_rat @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% sum.in_pairs
thf(fact_5755_sum_Oin__pairs,axiom,
    ! [G: nat > int,M: nat,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups3539618377306564664at_int
        @ ^ [I2: nat] : ( plus_plus_int @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% sum.in_pairs
thf(fact_5756_sum_Oin__pairs,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( plus_plus_nat @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% sum.in_pairs
thf(fact_5757_choose__square__sum,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( power_power_nat @ ( binomial @ N @ K3 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        @ ( set_ord_atMost_nat @ N ) )
      = ( binomial @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ N ) ) ).

% choose_square_sum
thf(fact_5758_sum_Ozero__middle,axiom,
    ! [P4: nat,K: nat,G: nat > int,H: nat > int] :
      ( ( ord_less_eq_nat @ one_one_nat @ P4 )
     => ( ( ord_less_eq_nat @ K @ P4 )
       => ( ( groups3539618377306564664at_int
            @ ^ [J3: nat] : ( if_int @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( if_int @ ( J3 = K ) @ zero_zero_int @ ( H @ ( minus_minus_nat @ J3 @ ( suc @ zero_zero_nat ) ) ) ) )
            @ ( set_ord_atMost_nat @ P4 ) )
          = ( groups3539618377306564664at_int
            @ ^ [J3: nat] : ( if_int @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( H @ J3 ) )
            @ ( set_ord_atMost_nat @ ( minus_minus_nat @ P4 @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ).

% sum.zero_middle
thf(fact_5759_sum_Ozero__middle,axiom,
    ! [P4: nat,K: nat,G: nat > code_integer,H: nat > code_integer] :
      ( ( ord_less_eq_nat @ one_one_nat @ P4 )
     => ( ( ord_less_eq_nat @ K @ P4 )
       => ( ( groups7501900531339628137nteger
            @ ^ [J3: nat] : ( if_Code_integer @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( if_Code_integer @ ( J3 = K ) @ zero_z3403309356797280102nteger @ ( H @ ( minus_minus_nat @ J3 @ ( suc @ zero_zero_nat ) ) ) ) )
            @ ( set_ord_atMost_nat @ P4 ) )
          = ( groups7501900531339628137nteger
            @ ^ [J3: nat] : ( if_Code_integer @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( H @ J3 ) )
            @ ( set_ord_atMost_nat @ ( minus_minus_nat @ P4 @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ).

% sum.zero_middle
thf(fact_5760_sum_Ozero__middle,axiom,
    ! [P4: nat,K: nat,G: nat > rat,H: nat > rat] :
      ( ( ord_less_eq_nat @ one_one_nat @ P4 )
     => ( ( ord_less_eq_nat @ K @ P4 )
       => ( ( groups2906978787729119204at_rat
            @ ^ [J3: nat] : ( if_rat @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( if_rat @ ( J3 = K ) @ zero_zero_rat @ ( H @ ( minus_minus_nat @ J3 @ ( suc @ zero_zero_nat ) ) ) ) )
            @ ( set_ord_atMost_nat @ P4 ) )
          = ( groups2906978787729119204at_rat
            @ ^ [J3: nat] : ( if_rat @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( H @ J3 ) )
            @ ( set_ord_atMost_nat @ ( minus_minus_nat @ P4 @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ).

% sum.zero_middle
thf(fact_5761_sum_Ozero__middle,axiom,
    ! [P4: nat,K: nat,G: nat > code_natural,H: nat > code_natural] :
      ( ( ord_less_eq_nat @ one_one_nat @ P4 )
     => ( ( ord_less_eq_nat @ K @ P4 )
       => ( ( groups6325495683096345652atural
            @ ^ [J3: nat] : ( if_Code_natural @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( if_Code_natural @ ( J3 = K ) @ zero_z2226904508553997617atural @ ( H @ ( minus_minus_nat @ J3 @ ( suc @ zero_zero_nat ) ) ) ) )
            @ ( set_ord_atMost_nat @ P4 ) )
          = ( groups6325495683096345652atural
            @ ^ [J3: nat] : ( if_Code_natural @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( H @ J3 ) )
            @ ( set_ord_atMost_nat @ ( minus_minus_nat @ P4 @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ).

% sum.zero_middle
thf(fact_5762_sum_Ozero__middle,axiom,
    ! [P4: nat,K: nat,G: nat > nat,H: nat > nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ P4 )
     => ( ( ord_less_eq_nat @ K @ P4 )
       => ( ( groups3542108847815614940at_nat
            @ ^ [J3: nat] : ( if_nat @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( if_nat @ ( J3 = K ) @ zero_zero_nat @ ( H @ ( minus_minus_nat @ J3 @ ( suc @ zero_zero_nat ) ) ) ) )
            @ ( set_ord_atMost_nat @ P4 ) )
          = ( groups3542108847815614940at_nat
            @ ^ [J3: nat] : ( if_nat @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( H @ J3 ) )
            @ ( set_ord_atMost_nat @ ( minus_minus_nat @ P4 @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ).

% sum.zero_middle
thf(fact_5763_gbinomial__partial__sum__poly,axiom,
    ! [M: nat,A: rat,X: rat,Y3: rat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( times_times_rat @ ( times_times_rat @ ( gbinomial_rat @ ( plus_plus_rat @ ( semiri681578069525770553at_rat @ M ) @ A ) @ K3 ) @ ( power_power_rat @ X @ K3 ) ) @ ( power_power_rat @ Y3 @ ( minus_minus_nat @ M @ K3 ) ) )
        @ ( set_ord_atMost_nat @ M ) )
      = ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( times_times_rat @ ( times_times_rat @ ( gbinomial_rat @ ( uminus_uminus_rat @ A ) @ K3 ) @ ( power_power_rat @ ( uminus_uminus_rat @ X ) @ K3 ) ) @ ( power_power_rat @ ( plus_plus_rat @ X @ Y3 ) @ ( minus_minus_nat @ M @ K3 ) ) )
        @ ( set_ord_atMost_nat @ M ) ) ) ).

% gbinomial_partial_sum_poly
thf(fact_5764_gbinomial__sum__up__index,axiom,
    ! [K: nat,N: nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [J3: nat] : ( gbinomial_rat @ ( semiri681578069525770553at_rat @ J3 ) @ K )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( gbinomial_rat @ ( plus_plus_rat @ ( semiri681578069525770553at_rat @ N ) @ one_one_rat ) @ ( plus_plus_nat @ K @ one_one_nat ) ) ) ).

% gbinomial_sum_up_index
thf(fact_5765_gauss__sum__nat,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : X4
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide_divide_nat @ ( times_times_nat @ N @ ( suc @ N ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% gauss_sum_nat
thf(fact_5766_sum__gp0,axiom,
    ! [X: rat,N: nat] :
      ( ( ( X = one_one_rat )
       => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_ord_atMost_nat @ N ) )
          = ( semiri681578069525770553at_rat @ ( plus_plus_nat @ N @ one_one_nat ) ) ) )
      & ( ( X != one_one_rat )
       => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_ord_atMost_nat @ N ) )
          = ( divide_divide_rat @ ( minus_minus_rat @ one_one_rat @ ( power_power_rat @ X @ ( suc @ N ) ) ) @ ( minus_minus_rat @ one_one_rat @ X ) ) ) ) ) ).

% sum_gp0
thf(fact_5767_gbinomial__partial__sum__poly__xpos,axiom,
    ! [M: nat,A: rat,X: rat,Y3: rat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( times_times_rat @ ( times_times_rat @ ( gbinomial_rat @ ( plus_plus_rat @ ( semiri681578069525770553at_rat @ M ) @ A ) @ K3 ) @ ( power_power_rat @ X @ K3 ) ) @ ( power_power_rat @ Y3 @ ( minus_minus_nat @ M @ K3 ) ) )
        @ ( set_ord_atMost_nat @ M ) )
      = ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( times_times_rat @ ( times_times_rat @ ( gbinomial_rat @ ( minus_minus_rat @ ( plus_plus_rat @ ( semiri681578069525770553at_rat @ K3 ) @ A ) @ one_one_rat ) @ K3 ) @ ( power_power_rat @ X @ K3 ) ) @ ( power_power_rat @ ( plus_plus_rat @ X @ Y3 ) @ ( minus_minus_nat @ M @ K3 ) ) )
        @ ( set_ord_atMost_nat @ M ) ) ) ).

% gbinomial_partial_sum_poly_xpos
thf(fact_5768_choose__alternating__linear__sum,axiom,
    ! [N: nat] :
      ( ( N != one_one_nat )
     => ( ( groups7501900531339628137nteger
          @ ^ [I2: nat] : ( times_3573771949741848930nteger @ ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ I2 ) @ ( semiri4939895301339042750nteger @ I2 ) ) @ ( semiri4939895301339042750nteger @ ( binomial @ N @ I2 ) ) )
          @ ( set_ord_atMost_nat @ N ) )
        = zero_z3403309356797280102nteger ) ) ).

% choose_alternating_linear_sum
thf(fact_5769_choose__alternating__linear__sum,axiom,
    ! [N: nat] :
      ( ( N != one_one_nat )
     => ( ( groups2906978787729119204at_rat
          @ ^ [I2: nat] : ( times_times_rat @ ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ I2 ) @ ( semiri681578069525770553at_rat @ I2 ) ) @ ( semiri681578069525770553at_rat @ ( binomial @ N @ I2 ) ) )
          @ ( set_ord_atMost_nat @ N ) )
        = zero_zero_rat ) ) ).

% choose_alternating_linear_sum
thf(fact_5770_choose__alternating__linear__sum,axiom,
    ! [N: nat] :
      ( ( N != one_one_nat )
     => ( ( groups3539618377306564664at_int
          @ ^ [I2: nat] : ( times_times_int @ ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ I2 ) @ ( semiri1314217659103216013at_int @ I2 ) ) @ ( semiri1314217659103216013at_int @ ( binomial @ N @ I2 ) ) )
          @ ( set_ord_atMost_nat @ N ) )
        = zero_zero_int ) ) ).

% choose_alternating_linear_sum
thf(fact_5771_gbinomial__sum__nat__pow2,axiom,
    ! [M: nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( divide_divide_rat @ ( gbinomial_rat @ ( semiri681578069525770553at_rat @ ( plus_plus_nat @ M @ K3 ) ) @ K3 ) @ ( power_power_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ K3 ) )
        @ ( set_ord_atMost_nat @ M ) )
      = ( power_power_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ M ) ) ).

% gbinomial_sum_nat_pow2
thf(fact_5772_double__arith__series,axiom,
    ! [A: code_natural,D: code_natural,N: nat] :
      ( ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) )
        @ ( groups6325495683096345652atural
          @ ^ [I2: nat] : ( plus_p4538020629002901425atural @ A @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ I2 ) @ D ) )
          @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) )
      = ( times_2397367101498566445atural @ ( plus_p4538020629002901425atural @ ( semiri3763490453095760265atural @ N ) @ one_one_Code_natural ) @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ N ) @ D ) ) ) ) ).

% double_arith_series
thf(fact_5773_double__arith__series,axiom,
    ! [A: code_integer,D: code_integer,N: nat] :
      ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) )
        @ ( groups7501900531339628137nteger
          @ ^ [I2: nat] : ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ I2 ) @ D ) )
          @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) )
      = ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( semiri4939895301339042750nteger @ N ) @ one_one_Code_integer ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ N ) @ D ) ) ) ) ).

% double_arith_series
thf(fact_5774_double__arith__series,axiom,
    ! [A: rat,D: rat,N: nat] :
      ( ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) )
        @ ( groups2906978787729119204at_rat
          @ ^ [I2: nat] : ( plus_plus_rat @ A @ ( times_times_rat @ ( semiri681578069525770553at_rat @ I2 ) @ D ) )
          @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) )
      = ( times_times_rat @ ( plus_plus_rat @ ( semiri681578069525770553at_rat @ N ) @ one_one_rat ) @ ( plus_plus_rat @ ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ A ) @ ( times_times_rat @ ( semiri681578069525770553at_rat @ N ) @ D ) ) ) ) ).

% double_arith_series
thf(fact_5775_double__arith__series,axiom,
    ! [A: int,D: int,N: nat] :
      ( ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) )
        @ ( groups3539618377306564664at_int
          @ ^ [I2: nat] : ( plus_plus_int @ A @ ( times_times_int @ ( semiri1314217659103216013at_int @ I2 ) @ D ) )
          @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) )
      = ( times_times_int @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) @ ( times_times_int @ ( semiri1314217659103216013at_int @ N ) @ D ) ) ) ) ).

% double_arith_series
thf(fact_5776_double__arith__series,axiom,
    ! [A: nat,D: nat,N: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
        @ ( groups3542108847815614940at_nat
          @ ^ [I2: nat] : ( plus_plus_nat @ A @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ I2 ) @ D ) )
          @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) )
      = ( times_times_nat @ ( plus_plus_nat @ ( semiri1316708129612266289at_nat @ N ) @ one_one_nat ) @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ N ) @ D ) ) ) ) ).

% double_arith_series
thf(fact_5777_double__gauss__sum,axiom,
    ! [N: nat] :
      ( ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( groups6325495683096345652atural @ semiri3763490453095760265atural @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) )
      = ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ N ) @ ( plus_p4538020629002901425atural @ ( semiri3763490453095760265atural @ N ) @ one_one_Code_natural ) ) ) ).

% double_gauss_sum
thf(fact_5778_double__gauss__sum,axiom,
    ! [N: nat] :
      ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( groups7501900531339628137nteger @ semiri4939895301339042750nteger @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) )
      = ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ N ) @ ( plus_p5714425477246183910nteger @ ( semiri4939895301339042750nteger @ N ) @ one_one_Code_integer ) ) ) ).

% double_gauss_sum
thf(fact_5779_double__gauss__sum,axiom,
    ! [N: nat] :
      ( ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ ( groups2906978787729119204at_rat @ semiri681578069525770553at_rat @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) )
      = ( times_times_rat @ ( semiri681578069525770553at_rat @ N ) @ ( plus_plus_rat @ ( semiri681578069525770553at_rat @ N ) @ one_one_rat ) ) ) ).

% double_gauss_sum
thf(fact_5780_double__gauss__sum,axiom,
    ! [N: nat] :
      ( ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( groups3539618377306564664at_int @ semiri1314217659103216013at_int @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ N ) @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) ) ) ).

% double_gauss_sum
thf(fact_5781_double__gauss__sum,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( groups3542108847815614940at_nat @ semiri1316708129612266289at_nat @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) )
      = ( times_times_nat @ ( semiri1316708129612266289at_nat @ N ) @ ( plus_plus_nat @ ( semiri1316708129612266289at_nat @ N ) @ one_one_nat ) ) ) ).

% double_gauss_sum
thf(fact_5782_binomial__r__part__sum,axiom,
    ! [M: nat] :
      ( ( groups3542108847815614940at_nat @ ( binomial @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ one_one_nat ) ) @ ( set_ord_atMost_nat @ M ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) ) ) ).

% binomial_r_part_sum
thf(fact_5783_choose__linear__sum,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( times_times_nat @ I2 @ ( binomial @ N @ I2 ) )
        @ ( set_ord_atMost_nat @ N ) )
      = ( times_times_nat @ N @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% choose_linear_sum
thf(fact_5784_arith__series__nat,axiom,
    ! [A: nat,D: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( plus_plus_nat @ A @ ( times_times_nat @ I2 @ D ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide_divide_nat @ ( times_times_nat @ ( suc @ N ) @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) @ ( times_times_nat @ N @ D ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% arith_series_nat
thf(fact_5785_Sum__Icc__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : X4
        @ ( set_or1269000886237332187st_nat @ M @ N ) )
      = ( divide_divide_nat @ ( minus_minus_nat @ ( times_times_nat @ N @ ( plus_plus_nat @ N @ one_one_nat ) ) @ ( times_times_nat @ M @ ( minus_minus_nat @ M @ one_one_nat ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% Sum_Icc_nat
thf(fact_5786_choose__alternating__sum,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( groups7501900531339628137nteger
          @ ^ [I2: nat] : ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ I2 ) @ ( semiri4939895301339042750nteger @ ( binomial @ N @ I2 ) ) )
          @ ( set_ord_atMost_nat @ N ) )
        = zero_z3403309356797280102nteger ) ) ).

% choose_alternating_sum
thf(fact_5787_choose__alternating__sum,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( groups2906978787729119204at_rat
          @ ^ [I2: nat] : ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ I2 ) @ ( semiri681578069525770553at_rat @ ( binomial @ N @ I2 ) ) )
          @ ( set_ord_atMost_nat @ N ) )
        = zero_zero_rat ) ) ).

% choose_alternating_sum
thf(fact_5788_choose__alternating__sum,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( groups3539618377306564664at_int
          @ ^ [I2: nat] : ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ I2 ) @ ( semiri1314217659103216013at_int @ ( binomial @ N @ I2 ) ) )
          @ ( set_ord_atMost_nat @ N ) )
        = zero_zero_int ) ) ).

% choose_alternating_sum
thf(fact_5789_double__gauss__sum__from__Suc__0,axiom,
    ! [N: nat] :
      ( ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( groups6325495683096345652atural @ semiri3763490453095760265atural @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) ) )
      = ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ N ) @ ( plus_p4538020629002901425atural @ ( semiri3763490453095760265atural @ N ) @ one_one_Code_natural ) ) ) ).

% double_gauss_sum_from_Suc_0
thf(fact_5790_double__gauss__sum__from__Suc__0,axiom,
    ! [N: nat] :
      ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( groups7501900531339628137nteger @ semiri4939895301339042750nteger @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) ) )
      = ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ N ) @ ( plus_p5714425477246183910nteger @ ( semiri4939895301339042750nteger @ N ) @ one_one_Code_integer ) ) ) ).

% double_gauss_sum_from_Suc_0
thf(fact_5791_double__gauss__sum__from__Suc__0,axiom,
    ! [N: nat] :
      ( ( times_times_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) @ ( groups2906978787729119204at_rat @ semiri681578069525770553at_rat @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) ) )
      = ( times_times_rat @ ( semiri681578069525770553at_rat @ N ) @ ( plus_plus_rat @ ( semiri681578069525770553at_rat @ N ) @ one_one_rat ) ) ) ).

% double_gauss_sum_from_Suc_0
thf(fact_5792_double__gauss__sum__from__Suc__0,axiom,
    ! [N: nat] :
      ( ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( groups3539618377306564664at_int @ semiri1314217659103216013at_int @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) ) )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ N ) @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) ) ) ).

% double_gauss_sum_from_Suc_0
thf(fact_5793_double__gauss__sum__from__Suc__0,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( groups3542108847815614940at_nat @ semiri1316708129612266289at_nat @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) ) )
      = ( times_times_nat @ ( semiri1316708129612266289at_nat @ N ) @ ( plus_plus_nat @ ( semiri1316708129612266289at_nat @ N ) @ one_one_nat ) ) ) ).

% double_gauss_sum_from_Suc_0
thf(fact_5794_arith__series,axiom,
    ! [A: code_integer,D: code_integer,N: nat] :
      ( ( groups7501900531339628137nteger
        @ ^ [I2: nat] : ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ I2 ) @ D ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( semiri4939895301339042750nteger @ N ) @ one_one_Code_integer ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ N ) @ D ) ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ).

% arith_series
thf(fact_5795_arith__series,axiom,
    ! [A: code_natural,D: code_natural,N: nat] :
      ( ( groups6325495683096345652atural
        @ ^ [I2: nat] : ( plus_p4538020629002901425atural @ A @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ I2 ) @ D ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ ( plus_p4538020629002901425atural @ ( semiri3763490453095760265atural @ N ) @ one_one_Code_natural ) @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ N ) @ D ) ) ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ).

% arith_series
thf(fact_5796_arith__series,axiom,
    ! [A: int,D: int,N: nat] :
      ( ( groups3539618377306564664at_int
        @ ^ [I2: nat] : ( plus_plus_int @ A @ ( times_times_int @ ( semiri1314217659103216013at_int @ I2 ) @ D ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide_divide_int @ ( times_times_int @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) @ ( times_times_int @ ( semiri1314217659103216013at_int @ N ) @ D ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% arith_series
thf(fact_5797_arith__series,axiom,
    ! [A: nat,D: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( plus_plus_nat @ A @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ I2 ) @ D ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide_divide_nat @ ( times_times_nat @ ( plus_plus_nat @ ( semiri1316708129612266289at_nat @ N ) @ one_one_nat ) @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ N ) @ D ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% arith_series
thf(fact_5798_gauss__sum,axiom,
    ! [N: nat] :
      ( ( groups7501900531339628137nteger @ semiri4939895301339042750nteger @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ N ) @ ( plus_p5714425477246183910nteger @ ( semiri4939895301339042750nteger @ N ) @ one_one_Code_integer ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ).

% gauss_sum
thf(fact_5799_gauss__sum,axiom,
    ! [N: nat] :
      ( ( groups6325495683096345652atural @ semiri3763490453095760265atural @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ N ) @ ( plus_p4538020629002901425atural @ ( semiri3763490453095760265atural @ N ) @ one_one_Code_natural ) ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ).

% gauss_sum
thf(fact_5800_gauss__sum,axiom,
    ! [N: nat] :
      ( ( groups3539618377306564664at_int @ semiri1314217659103216013at_int @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide_divide_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ N ) @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% gauss_sum
thf(fact_5801_gauss__sum,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat @ semiri1316708129612266289at_nat @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide_divide_nat @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ N ) @ ( plus_plus_nat @ ( semiri1316708129612266289at_nat @ N ) @ one_one_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% gauss_sum
thf(fact_5802_sum__gp__offset,axiom,
    ! [X: rat,M: nat,N: nat] :
      ( ( ( X = one_one_rat )
       => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_or1269000886237332187st_nat @ M @ ( plus_plus_nat @ M @ N ) ) )
          = ( plus_plus_rat @ ( semiri681578069525770553at_rat @ N ) @ one_one_rat ) ) )
      & ( ( X != one_one_rat )
       => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_or1269000886237332187st_nat @ M @ ( plus_plus_nat @ M @ N ) ) )
          = ( divide_divide_rat @ ( times_times_rat @ ( power_power_rat @ X @ M ) @ ( minus_minus_rat @ one_one_rat @ ( power_power_rat @ X @ ( suc @ N ) ) ) ) @ ( minus_minus_rat @ one_one_rat @ X ) ) ) ) ) ).

% sum_gp_offset
thf(fact_5803_gauss__sum__from__Suc__0,axiom,
    ! [N: nat] :
      ( ( groups7501900531339628137nteger @ semiri4939895301339042750nteger @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) )
      = ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ N ) @ ( plus_p5714425477246183910nteger @ ( semiri4939895301339042750nteger @ N ) @ one_one_Code_integer ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ).

% gauss_sum_from_Suc_0
thf(fact_5804_gauss__sum__from__Suc__0,axiom,
    ! [N: nat] :
      ( ( groups6325495683096345652atural @ semiri3763490453095760265atural @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) )
      = ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ N ) @ ( plus_p4538020629002901425atural @ ( semiri3763490453095760265atural @ N ) @ one_one_Code_natural ) ) @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ).

% gauss_sum_from_Suc_0
thf(fact_5805_gauss__sum__from__Suc__0,axiom,
    ! [N: nat] :
      ( ( groups3539618377306564664at_int @ semiri1314217659103216013at_int @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) )
      = ( divide_divide_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ N ) @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% gauss_sum_from_Suc_0
thf(fact_5806_gauss__sum__from__Suc__0,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat @ semiri1316708129612266289at_nat @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) )
      = ( divide_divide_nat @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ N ) @ ( plus_plus_nat @ ( semiri1316708129612266289at_nat @ N ) @ one_one_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% gauss_sum_from_Suc_0
thf(fact_5807_gchoose__row__sum__weighted,axiom,
    ! [R: rat,M: nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [K3: nat] : ( times_times_rat @ ( gbinomial_rat @ R @ K3 ) @ ( minus_minus_rat @ ( divide_divide_rat @ R @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) @ ( semiri681578069525770553at_rat @ K3 ) ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ M ) )
      = ( times_times_rat @ ( divide_divide_rat @ ( semiri681578069525770553at_rat @ ( suc @ M ) ) @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) @ ( gbinomial_rat @ R @ ( suc @ M ) ) ) ) ).

% gchoose_row_sum_weighted
thf(fact_5808_pochhammer__times__pochhammer__half,axiom,
    ! [Z: rat,N: nat] :
      ( ( times_times_rat @ ( comm_s4028243227959126397er_rat @ Z @ ( suc @ N ) ) @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ Z @ ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) ) @ ( suc @ N ) ) )
      = ( groups73079841787564623at_rat
        @ ^ [K3: nat] : ( plus_plus_rat @ Z @ ( divide_divide_rat @ ( semiri681578069525770553at_rat @ K3 ) @ ( numeral_numeral_rat @ ( bit0 @ one ) ) ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ one_one_nat ) ) ) ) ).

% pochhammer_times_pochhammer_half
thf(fact_5809_ex__nat__less,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [M5: nat] :
            ( ( ord_less_eq_nat @ M5 @ N )
            & ( P @ M5 ) ) )
      = ( ? [X4: nat] :
            ( ( member_nat @ X4 @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
            & ( P @ X4 ) ) ) ) ).

% ex_nat_less
thf(fact_5810_all__nat__less,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [M5: nat] :
            ( ( ord_less_eq_nat @ M5 @ N )
           => ( P @ M5 ) ) )
      = ( ! [X4: nat] :
            ( ( member_nat @ X4 @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
           => ( P @ X4 ) ) ) ) ).

% all_nat_less
thf(fact_5811_bezw_Osimps,axiom,
    ( bezw
    = ( ^ [X4: nat,Y: nat] : ( if_Pro3027730157355071871nt_int @ ( Y = zero_zero_nat ) @ ( product_Pair_int_int @ one_one_int @ zero_zero_int ) @ ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Y @ ( modulo_modulo_nat @ X4 @ Y ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Y @ ( modulo_modulo_nat @ X4 @ Y ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Y @ ( modulo_modulo_nat @ X4 @ Y ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X4 @ Y ) ) ) ) ) ) ) ) ).

% bezw.simps
thf(fact_5812_bezw_Oelims,axiom,
    ! [X: nat,Xa: nat,Y3: product_prod_int_int] :
      ( ( ( bezw @ X @ Xa )
        = Y3 )
     => ( ( ( Xa = zero_zero_nat )
         => ( Y3
            = ( product_Pair_int_int @ one_one_int @ zero_zero_int ) ) )
        & ( ( Xa != zero_zero_nat )
         => ( Y3
            = ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X @ Xa ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X @ Xa ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X @ Xa ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X @ Xa ) ) ) ) ) ) ) ) ) ).

% bezw.elims
thf(fact_5813_bezw__non__0,axiom,
    ! [Y3: nat,X: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ Y3 )
     => ( ( bezw @ X @ Y3 )
        = ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Y3 @ ( modulo_modulo_nat @ X @ Y3 ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Y3 @ ( modulo_modulo_nat @ X @ Y3 ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Y3 @ ( modulo_modulo_nat @ X @ Y3 ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X @ Y3 ) ) ) ) ) ) ) ).

% bezw_non_0
thf(fact_5814_of__nat__id,axiom,
    ( semiri1316708129612266289at_nat
    = ( ^ [N5: nat] : N5 ) ) ).

% of_nat_id
thf(fact_5815_Ints__prod,axiom,
    ! [A3: set_se7855581050983116737at_nat,F: set_Pr1261947904930325089at_nat > int] :
      ( ! [X5: set_Pr1261947904930325089at_nat] :
          ( ( member2643936169264416010at_nat @ X5 @ A3 )
         => ( member_int @ ( F @ X5 ) @ ring_1_Ints_int ) )
     => ( member_int @ ( groups1212143684287452584at_int @ F @ A3 ) @ ring_1_Ints_int ) ) ).

% Ints_prod
thf(fact_5816_Ints__prod,axiom,
    ! [A3: set_se6260736226359567993nt_int,F: set_Pr958786334691620121nt_int > int] :
      ( ! [X5: set_Pr958786334691620121nt_int] :
          ( ( member2340774599025711042nt_int @ X5 @ A3 )
         => ( member_int @ ( F @ X5 ) @ ring_1_Ints_int ) )
     => ( member_int @ ( groups1216284892592621664nt_int @ F @ A3 ) @ ring_1_Ints_int ) ) ).

% Ints_prod
thf(fact_5817_Ints__prod,axiom,
    ! [A3: set_set_nat,F: set_nat > int] :
      ( ! [X5: set_nat] :
          ( ( member_set_nat @ X5 @ A3 )
         => ( member_int @ ( F @ X5 ) @ ring_1_Ints_int ) )
     => ( member_int @ ( groups4246057289670975065at_int @ F @ A3 ) @ ring_1_Ints_int ) ) ).

% Ints_prod
thf(fact_5818_Ints__prod,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( member_int @ ( F @ X5 ) @ ring_1_Ints_int ) )
     => ( member_int @ ( groups705719431365010083at_int @ F @ A3 ) @ ring_1_Ints_int ) ) ).

% Ints_prod
thf(fact_5819_Ints__prod,axiom,
    ! [A3: set_int,F: int > int] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( member_int @ ( F @ X5 ) @ ring_1_Ints_int ) )
     => ( member_int @ ( groups1705073143266064639nt_int @ F @ A3 ) @ ring_1_Ints_int ) ) ).

% Ints_prod
thf(fact_5820_snd__apsnd,axiom,
    ! [F: code_integer > code_integer,X: produc8923325533196201883nteger] :
      ( ( produc6174133586879617921nteger @ ( produc6499014454317279255nteger @ F @ X ) )
      = ( F @ ( produc6174133586879617921nteger @ X ) ) ) ).

% snd_apsnd
thf(fact_5821_snd__apsnd,axiom,
    ! [F: int > int,X: product_prod_int_int] :
      ( ( product_snd_int_int @ ( produc4463282112584876420nt_int @ F @ X ) )
      = ( F @ ( product_snd_int_int @ X ) ) ) ).

% snd_apsnd
thf(fact_5822_snd__apsnd,axiom,
    ! [F: nat > nat,X: product_prod_nat_nat] :
      ( ( product_snd_nat_nat @ ( produc3094765310956027504at_nat @ F @ X ) )
      = ( F @ ( product_snd_nat_nat @ X ) ) ) ).

% snd_apsnd
thf(fact_5823_apsnd__eq__conv,axiom,
    ! [F: code_integer > code_integer,X: produc8923325533196201883nteger,G: code_integer > code_integer] :
      ( ( ( produc6499014454317279255nteger @ F @ X )
        = ( produc6499014454317279255nteger @ G @ X ) )
      = ( ( F @ ( produc6174133586879617921nteger @ X ) )
        = ( G @ ( produc6174133586879617921nteger @ X ) ) ) ) ).

% apsnd_eq_conv
thf(fact_5824_prod_Oneutral__const,axiom,
    ! [A3: set_nat] :
      ( ( groups708209901874060359at_nat
        @ ^ [Uu: nat] : one_one_nat
        @ A3 )
      = one_one_nat ) ).

% prod.neutral_const
thf(fact_5825_prod_Oneutral__const,axiom,
    ! [A3: set_nat] :
      ( ( groups705719431365010083at_int
        @ ^ [Uu: nat] : one_one_int
        @ A3 )
      = one_one_int ) ).

% prod.neutral_const
thf(fact_5826_prod_Oneutral__const,axiom,
    ! [A3: set_int] :
      ( ( groups1705073143266064639nt_int
        @ ^ [Uu: int] : one_one_int
        @ A3 )
      = one_one_int ) ).

% prod.neutral_const
thf(fact_5827_of__nat__prod,axiom,
    ! [F: int > nat,A3: set_int] :
      ( ( semiri1314217659103216013at_int @ ( groups1707563613775114915nt_nat @ F @ A3 ) )
      = ( groups1705073143266064639nt_int
        @ ^ [X4: int] : ( semiri1314217659103216013at_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_nat_prod
thf(fact_5828_of__nat__prod,axiom,
    ! [F: nat > nat,A3: set_nat] :
      ( ( semiri1316708129612266289at_nat @ ( groups708209901874060359at_nat @ F @ A3 ) )
      = ( groups708209901874060359at_nat
        @ ^ [X4: nat] : ( semiri1316708129612266289at_nat @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_nat_prod
thf(fact_5829_of__nat__prod,axiom,
    ! [F: nat > nat,A3: set_nat] :
      ( ( semiri1314217659103216013at_int @ ( groups708209901874060359at_nat @ F @ A3 ) )
      = ( groups705719431365010083at_int
        @ ^ [X4: nat] : ( semiri1314217659103216013at_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_nat_prod
thf(fact_5830_of__int__prod,axiom,
    ! [F: nat > int,A3: set_nat] :
      ( ( ring_1_of_int_rat @ ( groups705719431365010083at_int @ F @ A3 ) )
      = ( groups73079841787564623at_rat
        @ ^ [X4: nat] : ( ring_1_of_int_rat @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_int_prod
thf(fact_5831_of__int__prod,axiom,
    ! [F: nat > int,A3: set_nat] :
      ( ( ring_1_of_int_int @ ( groups705719431365010083at_int @ F @ A3 ) )
      = ( groups705719431365010083at_int
        @ ^ [X4: nat] : ( ring_1_of_int_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_int_prod
thf(fact_5832_of__int__prod,axiom,
    ! [F: int > int,A3: set_int] :
      ( ( ring_1_of_int_rat @ ( groups1705073143266064639nt_int @ F @ A3 ) )
      = ( groups1072433553688619179nt_rat
        @ ^ [X4: int] : ( ring_1_of_int_rat @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_int_prod
thf(fact_5833_of__int__prod,axiom,
    ! [F: int > int,A3: set_int] :
      ( ( ring_1_of_int_int @ ( groups1705073143266064639nt_int @ F @ A3 ) )
      = ( groups1705073143266064639nt_int
        @ ^ [X4: int] : ( ring_1_of_int_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% of_int_prod
thf(fact_5834_prod_Ocollapse,axiom,
    ! [Prod: produc8763457246119570046nteger] :
      ( ( produc6137756002093451184nteger @ ( produc2702340305111172292nteger @ Prod ) @ ( produc6514156286822040066nteger @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_5835_prod_Ocollapse,axiom,
    ! [Prod: produc989692990947075319atural] :
      ( ( produc3831813291587773865atural @ ( produc3051390257598303421atural @ Prod ) @ ( produc3085575039554877691atural @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_5836_prod_Ocollapse,axiom,
    ! [Prod: produc1908205239877642774nteger] :
      ( ( produc8603105652947943368nteger @ ( produc7822682618958472924nteger @ Prod ) @ ( produc7856867400915047194nteger @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_5837_prod_Ocollapse,axiom,
    ! [Prod: produc2285326912895808259nt_int] :
      ( ( produc5700946648718959541nt_int @ ( produc6816164490631068361nt_int @ Prod ) @ ( produc7328097813583171335nt_int @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_5838_prod_Ocollapse,axiom,
    ! [Prod: produc7773217078559923341nt_int] :
      ( ( produc4305682042979456191nt_int @ ( produc6230002227079971283nt_int @ Prod ) @ ( produc3162348030201620241nt_int @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_5839_prod_Ocollapse,axiom,
    ! [Prod: product_prod_int_int] :
      ( ( product_Pair_int_int @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_5840_prod_Ocollapse,axiom,
    ! [Prod: product_prod_nat_nat] :
      ( ( product_Pair_nat_nat @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_5841_snd__comp__apsnd,axiom,
    ! [F: code_integer > code_integer] :
      ( ( comp_P3428181540658402820nteger @ produc6174133586879617921nteger @ ( produc6499014454317279255nteger @ F ) )
      = ( comp_C1043215000170864188nteger @ F @ produc6174133586879617921nteger ) ) ).

% snd_comp_apsnd
thf(fact_5842_snd__comp__apsnd,axiom,
    ! [F: int > int] :
      ( ( comp_P5356232565778667509nt_int @ product_snd_int_int @ ( produc4463282112584876420nt_int @ F ) )
      = ( comp_i4330622015127193916nt_int @ F @ product_snd_int_int ) ) ).

% snd_comp_apsnd
thf(fact_5843_snd__comp__apsnd,axiom,
    ! [F: nat > nat] :
      ( ( comp_P1567445206330693457at_nat @ product_snd_nat_nat @ ( produc3094765310956027504at_nat @ F ) )
      = ( comp_n2711240574518091068at_nat @ F @ product_snd_nat_nat ) ) ).

% snd_comp_apsnd
thf(fact_5844_prod_Ocl__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > code_natural] :
      ( ( ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups2279045934846249631atural @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = one_one_Code_natural ) )
      & ( ~ ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups2279045934846249631atural @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = ( times_2397367101498566445atural @ ( groups2279045934846249631atural @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ) ) ).

% prod.cl_ivl_Suc
thf(fact_5845_prod_Ocl__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > code_integer] :
      ( ( ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = one_one_Code_integer ) )
      & ( ~ ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = ( times_3573771949741848930nteger @ ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ) ) ).

% prod.cl_ivl_Suc
thf(fact_5846_prod_Ocl__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > rat] :
      ( ( ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = one_one_rat ) )
      & ( ~ ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = ( times_times_rat @ ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ) ) ).

% prod.cl_ivl_Suc
thf(fact_5847_prod_Ocl__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > nat] :
      ( ( ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = one_one_nat ) )
      & ( ~ ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = ( times_times_nat @ ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ) ) ).

% prod.cl_ivl_Suc
thf(fact_5848_prod_Ocl__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > int] :
      ( ( ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = one_one_int ) )
      & ( ~ ( ord_less_nat @ ( suc @ N ) @ M )
       => ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) ) )
          = ( times_times_int @ ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ) ) ).

% prod.cl_ivl_Suc
thf(fact_5849_one__mod__numeral,axiom,
    ! [N: num] :
      ( ( modulo_modulo_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( product_snd_int_int @ ( unique5052692396658037445od_int @ one @ N ) ) ) ).

% one_mod_numeral
thf(fact_5850_one__mod__numeral,axiom,
    ! [N: num] :
      ( ( modulo_modulo_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) )
      = ( product_snd_nat_nat @ ( unique5055182867167087721od_nat @ one @ N ) ) ) ).

% one_mod_numeral
thf(fact_5851_one__mod__numeral,axiom,
    ! [N: num] :
      ( ( modulo364778990260209775nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ N ) )
      = ( produc6174133586879617921nteger @ ( unique3479559517661332726nteger @ one @ N ) ) ) ).

% one_mod_numeral
thf(fact_5852_prod_Oswap,axiom,
    ! [G: nat > nat > nat,B3: set_nat,A3: set_nat] :
      ( ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( groups708209901874060359at_nat @ ( G @ I2 ) @ B3 )
        @ A3 )
      = ( groups708209901874060359at_nat
        @ ^ [J3: nat] :
            ( groups708209901874060359at_nat
            @ ^ [I2: nat] : ( G @ I2 @ J3 )
            @ A3 )
        @ B3 ) ) ).

% prod.swap
thf(fact_5853_prod_Oswap,axiom,
    ! [G: nat > nat > int,B3: set_nat,A3: set_nat] :
      ( ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( groups705719431365010083at_int @ ( G @ I2 ) @ B3 )
        @ A3 )
      = ( groups705719431365010083at_int
        @ ^ [J3: nat] :
            ( groups705719431365010083at_int
            @ ^ [I2: nat] : ( G @ I2 @ J3 )
            @ A3 )
        @ B3 ) ) ).

% prod.swap
thf(fact_5854_prod_Oswap,axiom,
    ! [G: nat > int > int,B3: set_int,A3: set_nat] :
      ( ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( groups1705073143266064639nt_int @ ( G @ I2 ) @ B3 )
        @ A3 )
      = ( groups1705073143266064639nt_int
        @ ^ [J3: int] :
            ( groups705719431365010083at_int
            @ ^ [I2: nat] : ( G @ I2 @ J3 )
            @ A3 )
        @ B3 ) ) ).

% prod.swap
thf(fact_5855_prod_Oswap,axiom,
    ! [G: int > nat > int,B3: set_nat,A3: set_int] :
      ( ( groups1705073143266064639nt_int
        @ ^ [I2: int] : ( groups705719431365010083at_int @ ( G @ I2 ) @ B3 )
        @ A3 )
      = ( groups705719431365010083at_int
        @ ^ [J3: nat] :
            ( groups1705073143266064639nt_int
            @ ^ [I2: int] : ( G @ I2 @ J3 )
            @ A3 )
        @ B3 ) ) ).

% prod.swap
thf(fact_5856_prod_Oswap,axiom,
    ! [G: int > int > int,B3: set_int,A3: set_int] :
      ( ( groups1705073143266064639nt_int
        @ ^ [I2: int] : ( groups1705073143266064639nt_int @ ( G @ I2 ) @ B3 )
        @ A3 )
      = ( groups1705073143266064639nt_int
        @ ^ [J3: int] :
            ( groups1705073143266064639nt_int
            @ ^ [I2: int] : ( G @ I2 @ J3 )
            @ A3 )
        @ B3 ) ) ).

% prod.swap
thf(fact_5857_prod_Onot__neutral__contains__not__neutral,axiom,
    ! [G: int > nat,A3: set_int] :
      ( ( ( groups1707563613775114915nt_nat @ G @ A3 )
       != one_one_nat )
     => ~ ! [A2: int] :
            ( ( member_int @ A2 @ A3 )
           => ( ( G @ A2 )
              = one_one_nat ) ) ) ).

% prod.not_neutral_contains_not_neutral
thf(fact_5858_prod_Onot__neutral__contains__not__neutral,axiom,
    ! [G: nat > code_integer,A3: set_nat] :
      ( ( ( groups3455450783089532116nteger @ G @ A3 )
       != one_one_Code_integer )
     => ~ ! [A2: nat] :
            ( ( member_nat @ A2 @ A3 )
           => ( ( G @ A2 )
              = one_one_Code_integer ) ) ) ).

% prod.not_neutral_contains_not_neutral
thf(fact_5859_prod_Onot__neutral__contains__not__neutral,axiom,
    ! [G: int > code_integer,A3: set_int] :
      ( ( ( groups3827104343326376752nteger @ G @ A3 )
       != one_one_Code_integer )
     => ~ ! [A2: int] :
            ( ( member_int @ A2 @ A3 )
           => ( ( G @ A2 )
              = one_one_Code_integer ) ) ) ).

% prod.not_neutral_contains_not_neutral
thf(fact_5860_prod_Onot__neutral__contains__not__neutral,axiom,
    ! [G: nat > rat,A3: set_nat] :
      ( ( ( groups73079841787564623at_rat @ G @ A3 )
       != one_one_rat )
     => ~ ! [A2: nat] :
            ( ( member_nat @ A2 @ A3 )
           => ( ( G @ A2 )
              = one_one_rat ) ) ) ).

% prod.not_neutral_contains_not_neutral
thf(fact_5861_prod_Onot__neutral__contains__not__neutral,axiom,
    ! [G: int > rat,A3: set_int] :
      ( ( ( groups1072433553688619179nt_rat @ G @ A3 )
       != one_one_rat )
     => ~ ! [A2: int] :
            ( ( member_int @ A2 @ A3 )
           => ( ( G @ A2 )
              = one_one_rat ) ) ) ).

% prod.not_neutral_contains_not_neutral
thf(fact_5862_prod_Onot__neutral__contains__not__neutral,axiom,
    ! [G: nat > code_natural,A3: set_nat] :
      ( ( ( groups2279045934846249631atural @ G @ A3 )
       != one_one_Code_natural )
     => ~ ! [A2: nat] :
            ( ( member_nat @ A2 @ A3 )
           => ( ( G @ A2 )
              = one_one_Code_natural ) ) ) ).

% prod.not_neutral_contains_not_neutral
thf(fact_5863_prod_Onot__neutral__contains__not__neutral,axiom,
    ! [G: int > code_natural,A3: set_int] :
      ( ( ( groups2650699495083094267atural @ G @ A3 )
       != one_one_Code_natural )
     => ~ ! [A2: int] :
            ( ( member_int @ A2 @ A3 )
           => ( ( G @ A2 )
              = one_one_Code_natural ) ) ) ).

% prod.not_neutral_contains_not_neutral
thf(fact_5864_prod_Onot__neutral__contains__not__neutral,axiom,
    ! [G: nat > nat,A3: set_nat] :
      ( ( ( groups708209901874060359at_nat @ G @ A3 )
       != one_one_nat )
     => ~ ! [A2: nat] :
            ( ( member_nat @ A2 @ A3 )
           => ( ( G @ A2 )
              = one_one_nat ) ) ) ).

% prod.not_neutral_contains_not_neutral
thf(fact_5865_prod_Onot__neutral__contains__not__neutral,axiom,
    ! [G: nat > int,A3: set_nat] :
      ( ( ( groups705719431365010083at_int @ G @ A3 )
       != one_one_int )
     => ~ ! [A2: nat] :
            ( ( member_nat @ A2 @ A3 )
           => ( ( G @ A2 )
              = one_one_int ) ) ) ).

% prod.not_neutral_contains_not_neutral
thf(fact_5866_prod_Onot__neutral__contains__not__neutral,axiom,
    ! [G: int > int,A3: set_int] :
      ( ( ( groups1705073143266064639nt_int @ G @ A3 )
       != one_one_int )
     => ~ ! [A2: int] :
            ( ( member_int @ A2 @ A3 )
           => ( ( G @ A2 )
              = one_one_int ) ) ) ).

% prod.not_neutral_contains_not_neutral
thf(fact_5867_prod_Oneutral,axiom,
    ! [A3: set_nat,G: nat > nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ( G @ X5 )
            = one_one_nat ) )
     => ( ( groups708209901874060359at_nat @ G @ A3 )
        = one_one_nat ) ) ).

% prod.neutral
thf(fact_5868_prod_Oneutral,axiom,
    ! [A3: set_nat,G: nat > int] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ( G @ X5 )
            = one_one_int ) )
     => ( ( groups705719431365010083at_int @ G @ A3 )
        = one_one_int ) ) ).

% prod.neutral
thf(fact_5869_prod_Oneutral,axiom,
    ! [A3: set_int,G: int > int] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ( G @ X5 )
            = one_one_int ) )
     => ( ( groups1705073143266064639nt_int @ G @ A3 )
        = one_one_int ) ) ).

% prod.neutral
thf(fact_5870_snd__conv,axiom,
    ! [X1: code_integer > option6357759511663192854e_term,X2: produc8923325533196201883nteger] :
      ( ( produc6514156286822040066nteger @ ( produc6137756002093451184nteger @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_5871_snd__conv,axiom,
    ! [X1: produc4972180933644002618e_term > option6357759511663192854e_term,X2: produc7822875418678951345atural] :
      ( ( produc3085575039554877691atural @ ( produc3831813291587773865atural @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_5872_snd__conv,axiom,
    ! [X1: produc6241069584506657477e_term > option6357759511663192854e_term,X2: produc8923325533196201883nteger] :
      ( ( produc7856867400915047194nteger @ ( produc8603105652947943368nteger @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_5873_snd__conv,axiom,
    ! [X1: produc8551481072490612790e_term > option6357759511663192854e_term,X2: product_prod_int_int] :
      ( ( produc7328097813583171335nt_int @ ( produc5700946648718959541nt_int @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_5874_snd__conv,axiom,
    ! [X1: int > option6357759511663192854e_term,X2: product_prod_int_int] :
      ( ( produc3162348030201620241nt_int @ ( produc4305682042979456191nt_int @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_5875_snd__conv,axiom,
    ! [X1: int,X2: int] :
      ( ( product_snd_int_int @ ( product_Pair_int_int @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_5876_snd__conv,axiom,
    ! [X1: nat,X2: nat] :
      ( ( product_snd_nat_nat @ ( product_Pair_nat_nat @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_5877_snd__eqD,axiom,
    ! [X: code_integer > option6357759511663192854e_term,Y3: produc8923325533196201883nteger,A: produc8923325533196201883nteger] :
      ( ( ( produc6514156286822040066nteger @ ( produc6137756002093451184nteger @ X @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_5878_snd__eqD,axiom,
    ! [X: produc4972180933644002618e_term > option6357759511663192854e_term,Y3: produc7822875418678951345atural,A: produc7822875418678951345atural] :
      ( ( ( produc3085575039554877691atural @ ( produc3831813291587773865atural @ X @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_5879_snd__eqD,axiom,
    ! [X: produc6241069584506657477e_term > option6357759511663192854e_term,Y3: produc8923325533196201883nteger,A: produc8923325533196201883nteger] :
      ( ( ( produc7856867400915047194nteger @ ( produc8603105652947943368nteger @ X @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_5880_snd__eqD,axiom,
    ! [X: produc8551481072490612790e_term > option6357759511663192854e_term,Y3: product_prod_int_int,A: product_prod_int_int] :
      ( ( ( produc7328097813583171335nt_int @ ( produc5700946648718959541nt_int @ X @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_5881_snd__eqD,axiom,
    ! [X: int > option6357759511663192854e_term,Y3: product_prod_int_int,A: product_prod_int_int] :
      ( ( ( produc3162348030201620241nt_int @ ( produc4305682042979456191nt_int @ X @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_5882_snd__eqD,axiom,
    ! [X: int,Y3: int,A: int] :
      ( ( ( product_snd_int_int @ ( product_Pair_int_int @ X @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_5883_snd__eqD,axiom,
    ! [X: nat,Y3: nat,A: nat] :
      ( ( ( product_snd_nat_nat @ ( product_Pair_nat_nat @ X @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_5884_sndI,axiom,
    ! [X: produc8763457246119570046nteger,Y3: code_integer > option6357759511663192854e_term,Z: produc8923325533196201883nteger] :
      ( ( X
        = ( produc6137756002093451184nteger @ Y3 @ Z ) )
     => ( ( produc6514156286822040066nteger @ X )
        = Z ) ) ).

% sndI
thf(fact_5885_sndI,axiom,
    ! [X: produc989692990947075319atural,Y3: produc4972180933644002618e_term > option6357759511663192854e_term,Z: produc7822875418678951345atural] :
      ( ( X
        = ( produc3831813291587773865atural @ Y3 @ Z ) )
     => ( ( produc3085575039554877691atural @ X )
        = Z ) ) ).

% sndI
thf(fact_5886_sndI,axiom,
    ! [X: produc1908205239877642774nteger,Y3: produc6241069584506657477e_term > option6357759511663192854e_term,Z: produc8923325533196201883nteger] :
      ( ( X
        = ( produc8603105652947943368nteger @ Y3 @ Z ) )
     => ( ( produc7856867400915047194nteger @ X )
        = Z ) ) ).

% sndI
thf(fact_5887_sndI,axiom,
    ! [X: produc2285326912895808259nt_int,Y3: produc8551481072490612790e_term > option6357759511663192854e_term,Z: product_prod_int_int] :
      ( ( X
        = ( produc5700946648718959541nt_int @ Y3 @ Z ) )
     => ( ( produc7328097813583171335nt_int @ X )
        = Z ) ) ).

% sndI
thf(fact_5888_sndI,axiom,
    ! [X: produc7773217078559923341nt_int,Y3: int > option6357759511663192854e_term,Z: product_prod_int_int] :
      ( ( X
        = ( produc4305682042979456191nt_int @ Y3 @ Z ) )
     => ( ( produc3162348030201620241nt_int @ X )
        = Z ) ) ).

% sndI
thf(fact_5889_sndI,axiom,
    ! [X: product_prod_int_int,Y3: int,Z: int] :
      ( ( X
        = ( product_Pair_int_int @ Y3 @ Z ) )
     => ( ( product_snd_int_int @ X )
        = Z ) ) ).

% sndI
thf(fact_5890_sndI,axiom,
    ! [X: product_prod_nat_nat,Y3: nat,Z: nat] :
      ( ( X
        = ( product_Pair_nat_nat @ Y3 @ Z ) )
     => ( ( product_snd_nat_nat @ X )
        = Z ) ) ).

% sndI
thf(fact_5891_prod_Oexpand,axiom,
    ! [Prod: product_prod_int_int,Prod2: product_prod_int_int] :
      ( ( ( ( product_fst_int_int @ Prod )
          = ( product_fst_int_int @ Prod2 ) )
        & ( ( product_snd_int_int @ Prod )
          = ( product_snd_int_int @ Prod2 ) ) )
     => ( Prod = Prod2 ) ) ).

% prod.expand
thf(fact_5892_prod_Oexpand,axiom,
    ! [Prod: product_prod_nat_nat,Prod2: product_prod_nat_nat] :
      ( ( ( ( product_fst_nat_nat @ Prod )
          = ( product_fst_nat_nat @ Prod2 ) )
        & ( ( product_snd_nat_nat @ Prod )
          = ( product_snd_nat_nat @ Prod2 ) ) )
     => ( Prod = Prod2 ) ) ).

% prod.expand
thf(fact_5893_prod__eqI,axiom,
    ! [P4: product_prod_int_int,Q2: product_prod_int_int] :
      ( ( ( product_fst_int_int @ P4 )
        = ( product_fst_int_int @ Q2 ) )
     => ( ( ( product_snd_int_int @ P4 )
          = ( product_snd_int_int @ Q2 ) )
       => ( P4 = Q2 ) ) ) ).

% prod_eqI
thf(fact_5894_prod__eqI,axiom,
    ! [P4: product_prod_nat_nat,Q2: product_prod_nat_nat] :
      ( ( ( product_fst_nat_nat @ P4 )
        = ( product_fst_nat_nat @ Q2 ) )
     => ( ( ( product_snd_nat_nat @ P4 )
          = ( product_snd_nat_nat @ Q2 ) )
       => ( P4 = Q2 ) ) ) ).

% prod_eqI
thf(fact_5895_prod__eq__iff,axiom,
    ( ( ^ [Y5: product_prod_int_int,Z2: product_prod_int_int] : Y5 = Z2 )
    = ( ^ [S2: product_prod_int_int,T2: product_prod_int_int] :
          ( ( ( product_fst_int_int @ S2 )
            = ( product_fst_int_int @ T2 ) )
          & ( ( product_snd_int_int @ S2 )
            = ( product_snd_int_int @ T2 ) ) ) ) ) ).

% prod_eq_iff
thf(fact_5896_prod__eq__iff,axiom,
    ( ( ^ [Y5: product_prod_nat_nat,Z2: product_prod_nat_nat] : Y5 = Z2 )
    = ( ^ [S2: product_prod_nat_nat,T2: product_prod_nat_nat] :
          ( ( ( product_fst_nat_nat @ S2 )
            = ( product_fst_nat_nat @ T2 ) )
          & ( ( product_snd_nat_nat @ S2 )
            = ( product_snd_nat_nat @ T2 ) ) ) ) ) ).

% prod_eq_iff
thf(fact_5897_prod_Odistrib,axiom,
    ! [G: nat > nat,H: nat > nat,A3: set_nat] :
      ( ( groups708209901874060359at_nat
        @ ^ [X4: nat] : ( times_times_nat @ ( G @ X4 ) @ ( H @ X4 ) )
        @ A3 )
      = ( times_times_nat @ ( groups708209901874060359at_nat @ G @ A3 ) @ ( groups708209901874060359at_nat @ H @ A3 ) ) ) ).

% prod.distrib
thf(fact_5898_prod_Odistrib,axiom,
    ! [G: nat > int,H: nat > int,A3: set_nat] :
      ( ( groups705719431365010083at_int
        @ ^ [X4: nat] : ( times_times_int @ ( G @ X4 ) @ ( H @ X4 ) )
        @ A3 )
      = ( times_times_int @ ( groups705719431365010083at_int @ G @ A3 ) @ ( groups705719431365010083at_int @ H @ A3 ) ) ) ).

% prod.distrib
thf(fact_5899_prod_Odistrib,axiom,
    ! [G: int > int,H: int > int,A3: set_int] :
      ( ( groups1705073143266064639nt_int
        @ ^ [X4: int] : ( times_times_int @ ( G @ X4 ) @ ( H @ X4 ) )
        @ A3 )
      = ( times_times_int @ ( groups1705073143266064639nt_int @ G @ A3 ) @ ( groups1705073143266064639nt_int @ H @ A3 ) ) ) ).

% prod.distrib
thf(fact_5900_prod__power__distrib,axiom,
    ! [F: nat > nat,A3: set_nat,N: nat] :
      ( ( power_power_nat @ ( groups708209901874060359at_nat @ F @ A3 ) @ N )
      = ( groups708209901874060359at_nat
        @ ^ [X4: nat] : ( power_power_nat @ ( F @ X4 ) @ N )
        @ A3 ) ) ).

% prod_power_distrib
thf(fact_5901_prod__power__distrib,axiom,
    ! [F: nat > int,A3: set_nat,N: nat] :
      ( ( power_power_int @ ( groups705719431365010083at_int @ F @ A3 ) @ N )
      = ( groups705719431365010083at_int
        @ ^ [X4: nat] : ( power_power_int @ ( F @ X4 ) @ N )
        @ A3 ) ) ).

% prod_power_distrib
thf(fact_5902_prod__power__distrib,axiom,
    ! [F: int > int,A3: set_int,N: nat] :
      ( ( power_power_int @ ( groups1705073143266064639nt_int @ F @ A3 ) @ N )
      = ( groups1705073143266064639nt_int
        @ ^ [X4: int] : ( power_power_int @ ( F @ X4 ) @ N )
        @ A3 ) ) ).

% prod_power_distrib
thf(fact_5903_mod__prod__eq,axiom,
    ! [F: nat > nat,A: nat,A3: set_nat] :
      ( ( modulo_modulo_nat
        @ ( groups708209901874060359at_nat
          @ ^ [I2: nat] : ( modulo_modulo_nat @ ( F @ I2 ) @ A )
          @ A3 )
        @ A )
      = ( modulo_modulo_nat @ ( groups708209901874060359at_nat @ F @ A3 ) @ A ) ) ).

% mod_prod_eq
thf(fact_5904_mod__prod__eq,axiom,
    ! [F: nat > int,A: int,A3: set_nat] :
      ( ( modulo_modulo_int
        @ ( groups705719431365010083at_int
          @ ^ [I2: nat] : ( modulo_modulo_int @ ( F @ I2 ) @ A )
          @ A3 )
        @ A )
      = ( modulo_modulo_int @ ( groups705719431365010083at_int @ F @ A3 ) @ A ) ) ).

% mod_prod_eq
thf(fact_5905_mod__prod__eq,axiom,
    ! [F: int > int,A: int,A3: set_int] :
      ( ( modulo_modulo_int
        @ ( groups1705073143266064639nt_int
          @ ^ [I2: int] : ( modulo_modulo_int @ ( F @ I2 ) @ A )
          @ A3 )
        @ A )
      = ( modulo_modulo_int @ ( groups1705073143266064639nt_int @ F @ A3 ) @ A ) ) ).

% mod_prod_eq
thf(fact_5906_snd__def,axiom,
    ( product_snd_nat_nat
    = ( produc6842872674320459806at_nat
      @ ^ [X12: nat,X23: nat] : X23 ) ) ).

% snd_def
thf(fact_5907_snd__def,axiom,
    ( product_snd_int_int
    = ( produc8211389475949308722nt_int
      @ ^ [X12: int,X23: int] : X23 ) ) ).

% snd_def
thf(fact_5908_prod__nonneg,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ X5 ) ) )
     => ( ord_less_eq_nat @ zero_zero_nat @ ( groups708209901874060359at_nat @ F @ A3 ) ) ) ).

% prod_nonneg
thf(fact_5909_prod__nonneg,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_int @ zero_zero_int @ ( F @ X5 ) ) )
     => ( ord_less_eq_int @ zero_zero_int @ ( groups705719431365010083at_int @ F @ A3 ) ) ) ).

% prod_nonneg
thf(fact_5910_prod__nonneg,axiom,
    ! [A3: set_int,F: int > int] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_int @ zero_zero_int @ ( F @ X5 ) ) )
     => ( ord_less_eq_int @ zero_zero_int @ ( groups1705073143266064639nt_int @ F @ A3 ) ) ) ).

% prod_nonneg
thf(fact_5911_prod__mono,axiom,
    ! [A3: set_nat,F: nat > code_integer,G: nat > code_integer] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) )
            & ( ord_le3102999989581377725nteger @ ( F @ I3 ) @ ( G @ I3 ) ) ) )
     => ( ord_le3102999989581377725nteger @ ( groups3455450783089532116nteger @ F @ A3 ) @ ( groups3455450783089532116nteger @ G @ A3 ) ) ) ).

% prod_mono
thf(fact_5912_prod__mono,axiom,
    ! [A3: set_int,F: int > code_integer,G: int > code_integer] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) )
            & ( ord_le3102999989581377725nteger @ ( F @ I3 ) @ ( G @ I3 ) ) ) )
     => ( ord_le3102999989581377725nteger @ ( groups3827104343326376752nteger @ F @ A3 ) @ ( groups3827104343326376752nteger @ G @ A3 ) ) ) ).

% prod_mono
thf(fact_5913_prod__mono,axiom,
    ! [A3: set_nat,F: nat > code_natural,G: nat > code_natural] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) )
            & ( ord_le1926595141338095240atural @ ( F @ I3 ) @ ( G @ I3 ) ) ) )
     => ( ord_le1926595141338095240atural @ ( groups2279045934846249631atural @ F @ A3 ) @ ( groups2279045934846249631atural @ G @ A3 ) ) ) ).

% prod_mono
thf(fact_5914_prod__mono,axiom,
    ! [A3: set_int,F: int > code_natural,G: int > code_natural] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) )
            & ( ord_le1926595141338095240atural @ ( F @ I3 ) @ ( G @ I3 ) ) ) )
     => ( ord_le1926595141338095240atural @ ( groups2650699495083094267atural @ F @ A3 ) @ ( groups2650699495083094267atural @ G @ A3 ) ) ) ).

% prod_mono
thf(fact_5915_prod__mono,axiom,
    ! [A3: set_nat,F: nat > rat,G: nat > rat] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) )
            & ( ord_less_eq_rat @ ( F @ I3 ) @ ( G @ I3 ) ) ) )
     => ( ord_less_eq_rat @ ( groups73079841787564623at_rat @ F @ A3 ) @ ( groups73079841787564623at_rat @ G @ A3 ) ) ) ).

% prod_mono
thf(fact_5916_prod__mono,axiom,
    ! [A3: set_int,F: int > rat,G: int > rat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) )
            & ( ord_less_eq_rat @ ( F @ I3 ) @ ( G @ I3 ) ) ) )
     => ( ord_less_eq_rat @ ( groups1072433553688619179nt_rat @ F @ A3 ) @ ( groups1072433553688619179nt_rat @ G @ A3 ) ) ) ).

% prod_mono
thf(fact_5917_prod__mono,axiom,
    ! [A3: set_int,F: int > nat,G: int > nat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ ( F @ I3 ) )
            & ( ord_less_eq_nat @ ( F @ I3 ) @ ( G @ I3 ) ) ) )
     => ( ord_less_eq_nat @ ( groups1707563613775114915nt_nat @ F @ A3 ) @ ( groups1707563613775114915nt_nat @ G @ A3 ) ) ) ).

% prod_mono
thf(fact_5918_prod__mono,axiom,
    ! [A3: set_nat,F: nat > nat,G: nat > nat] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ ( F @ I3 ) )
            & ( ord_less_eq_nat @ ( F @ I3 ) @ ( G @ I3 ) ) ) )
     => ( ord_less_eq_nat @ ( groups708209901874060359at_nat @ F @ A3 ) @ ( groups708209901874060359at_nat @ G @ A3 ) ) ) ).

% prod_mono
thf(fact_5919_prod__mono,axiom,
    ! [A3: set_nat,F: nat > int,G: nat > int] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ( ord_less_eq_int @ zero_zero_int @ ( F @ I3 ) )
            & ( ord_less_eq_int @ ( F @ I3 ) @ ( G @ I3 ) ) ) )
     => ( ord_less_eq_int @ ( groups705719431365010083at_int @ F @ A3 ) @ ( groups705719431365010083at_int @ G @ A3 ) ) ) ).

% prod_mono
thf(fact_5920_prod__mono,axiom,
    ! [A3: set_int,F: int > int,G: int > int] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ( ord_less_eq_int @ zero_zero_int @ ( F @ I3 ) )
            & ( ord_less_eq_int @ ( F @ I3 ) @ ( G @ I3 ) ) ) )
     => ( ord_less_eq_int @ ( groups1705073143266064639nt_int @ F @ A3 ) @ ( groups1705073143266064639nt_int @ G @ A3 ) ) ) ).

% prod_mono
thf(fact_5921_prod__pos,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_nat @ zero_zero_nat @ ( F @ X5 ) ) )
     => ( ord_less_nat @ zero_zero_nat @ ( groups708209901874060359at_nat @ F @ A3 ) ) ) ).

% prod_pos
thf(fact_5922_prod__pos,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_int @ zero_zero_int @ ( F @ X5 ) ) )
     => ( ord_less_int @ zero_zero_int @ ( groups705719431365010083at_int @ F @ A3 ) ) ) ).

% prod_pos
thf(fact_5923_prod__pos,axiom,
    ! [A3: set_int,F: int > int] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_int @ zero_zero_int @ ( F @ X5 ) ) )
     => ( ord_less_int @ zero_zero_int @ ( groups1705073143266064639nt_int @ F @ A3 ) ) ) ).

% prod_pos
thf(fact_5924_prod__ge__1,axiom,
    ! [A3: set_nat,F: nat > code_integer] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( F @ X5 ) ) )
     => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( groups3455450783089532116nteger @ F @ A3 ) ) ) ).

% prod_ge_1
thf(fact_5925_prod__ge__1,axiom,
    ! [A3: set_int,F: int > code_integer] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( F @ X5 ) ) )
     => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( groups3827104343326376752nteger @ F @ A3 ) ) ) ).

% prod_ge_1
thf(fact_5926_prod__ge__1,axiom,
    ! [A3: set_nat,F: nat > code_natural] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_le1926595141338095240atural @ one_one_Code_natural @ ( F @ X5 ) ) )
     => ( ord_le1926595141338095240atural @ one_one_Code_natural @ ( groups2279045934846249631atural @ F @ A3 ) ) ) ).

% prod_ge_1
thf(fact_5927_prod__ge__1,axiom,
    ! [A3: set_int,F: int > code_natural] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_le1926595141338095240atural @ one_one_Code_natural @ ( F @ X5 ) ) )
     => ( ord_le1926595141338095240atural @ one_one_Code_natural @ ( groups2650699495083094267atural @ F @ A3 ) ) ) ).

% prod_ge_1
thf(fact_5928_prod__ge__1,axiom,
    ! [A3: set_nat,F: nat > rat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_rat @ one_one_rat @ ( F @ X5 ) ) )
     => ( ord_less_eq_rat @ one_one_rat @ ( groups73079841787564623at_rat @ F @ A3 ) ) ) ).

% prod_ge_1
thf(fact_5929_prod__ge__1,axiom,
    ! [A3: set_int,F: int > rat] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_rat @ one_one_rat @ ( F @ X5 ) ) )
     => ( ord_less_eq_rat @ one_one_rat @ ( groups1072433553688619179nt_rat @ F @ A3 ) ) ) ).

% prod_ge_1
thf(fact_5930_prod__ge__1,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_nat @ one_one_nat @ ( F @ X5 ) ) )
     => ( ord_less_eq_nat @ one_one_nat @ ( groups1707563613775114915nt_nat @ F @ A3 ) ) ) ).

% prod_ge_1
thf(fact_5931_prod__ge__1,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_nat @ one_one_nat @ ( F @ X5 ) ) )
     => ( ord_less_eq_nat @ one_one_nat @ ( groups708209901874060359at_nat @ F @ A3 ) ) ) ).

% prod_ge_1
thf(fact_5932_prod__ge__1,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ord_less_eq_int @ one_one_int @ ( F @ X5 ) ) )
     => ( ord_less_eq_int @ one_one_int @ ( groups705719431365010083at_int @ F @ A3 ) ) ) ).

% prod_ge_1
thf(fact_5933_prod__ge__1,axiom,
    ! [A3: set_int,F: int > int] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ord_less_eq_int @ one_one_int @ ( F @ X5 ) ) )
     => ( ord_less_eq_int @ one_one_int @ ( groups1705073143266064639nt_int @ F @ A3 ) ) ) ).

% prod_ge_1
thf(fact_5934_prod_Oexhaust__sel,axiom,
    ! [Prod: produc8763457246119570046nteger] :
      ( Prod
      = ( produc6137756002093451184nteger @ ( produc2702340305111172292nteger @ Prod ) @ ( produc6514156286822040066nteger @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_5935_prod_Oexhaust__sel,axiom,
    ! [Prod: produc989692990947075319atural] :
      ( Prod
      = ( produc3831813291587773865atural @ ( produc3051390257598303421atural @ Prod ) @ ( produc3085575039554877691atural @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_5936_prod_Oexhaust__sel,axiom,
    ! [Prod: produc1908205239877642774nteger] :
      ( Prod
      = ( produc8603105652947943368nteger @ ( produc7822682618958472924nteger @ Prod ) @ ( produc7856867400915047194nteger @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_5937_prod_Oexhaust__sel,axiom,
    ! [Prod: produc2285326912895808259nt_int] :
      ( Prod
      = ( produc5700946648718959541nt_int @ ( produc6816164490631068361nt_int @ Prod ) @ ( produc7328097813583171335nt_int @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_5938_prod_Oexhaust__sel,axiom,
    ! [Prod: produc7773217078559923341nt_int] :
      ( Prod
      = ( produc4305682042979456191nt_int @ ( produc6230002227079971283nt_int @ Prod ) @ ( produc3162348030201620241nt_int @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_5939_prod_Oexhaust__sel,axiom,
    ! [Prod: product_prod_int_int] :
      ( Prod
      = ( product_Pair_int_int @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_5940_prod_Oexhaust__sel,axiom,
    ! [Prod: product_prod_nat_nat] :
      ( Prod
      = ( product_Pair_nat_nat @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_5941_surjective__pairing,axiom,
    ! [T: produc8763457246119570046nteger] :
      ( T
      = ( produc6137756002093451184nteger @ ( produc2702340305111172292nteger @ T ) @ ( produc6514156286822040066nteger @ T ) ) ) ).

% surjective_pairing
thf(fact_5942_surjective__pairing,axiom,
    ! [T: produc989692990947075319atural] :
      ( T
      = ( produc3831813291587773865atural @ ( produc3051390257598303421atural @ T ) @ ( produc3085575039554877691atural @ T ) ) ) ).

% surjective_pairing
thf(fact_5943_surjective__pairing,axiom,
    ! [T: produc1908205239877642774nteger] :
      ( T
      = ( produc8603105652947943368nteger @ ( produc7822682618958472924nteger @ T ) @ ( produc7856867400915047194nteger @ T ) ) ) ).

% surjective_pairing
thf(fact_5944_surjective__pairing,axiom,
    ! [T: produc2285326912895808259nt_int] :
      ( T
      = ( produc5700946648718959541nt_int @ ( produc6816164490631068361nt_int @ T ) @ ( produc7328097813583171335nt_int @ T ) ) ) ).

% surjective_pairing
thf(fact_5945_surjective__pairing,axiom,
    ! [T: produc7773217078559923341nt_int] :
      ( T
      = ( produc4305682042979456191nt_int @ ( produc6230002227079971283nt_int @ T ) @ ( produc3162348030201620241nt_int @ T ) ) ) ).

% surjective_pairing
thf(fact_5946_surjective__pairing,axiom,
    ! [T: product_prod_int_int] :
      ( T
      = ( product_Pair_int_int @ ( product_fst_int_int @ T ) @ ( product_snd_int_int @ T ) ) ) ).

% surjective_pairing
thf(fact_5947_surjective__pairing,axiom,
    ! [T: product_prod_nat_nat] :
      ( T
      = ( product_Pair_nat_nat @ ( product_fst_nat_nat @ T ) @ ( product_snd_nat_nat @ T ) ) ) ).

% surjective_pairing
thf(fact_5948_conjI__realizer,axiom,
    ! [P: ( code_integer > option6357759511663192854e_term ) > $o,P4: code_integer > option6357759511663192854e_term,Q: produc8923325533196201883nteger > $o,Q2: produc8923325533196201883nteger] :
      ( ( P @ P4 )
     => ( ( Q @ Q2 )
       => ( ( P @ ( produc2702340305111172292nteger @ ( produc6137756002093451184nteger @ P4 @ Q2 ) ) )
          & ( Q @ ( produc6514156286822040066nteger @ ( produc6137756002093451184nteger @ P4 @ Q2 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_5949_conjI__realizer,axiom,
    ! [P: ( produc4972180933644002618e_term > option6357759511663192854e_term ) > $o,P4: produc4972180933644002618e_term > option6357759511663192854e_term,Q: produc7822875418678951345atural > $o,Q2: produc7822875418678951345atural] :
      ( ( P @ P4 )
     => ( ( Q @ Q2 )
       => ( ( P @ ( produc3051390257598303421atural @ ( produc3831813291587773865atural @ P4 @ Q2 ) ) )
          & ( Q @ ( produc3085575039554877691atural @ ( produc3831813291587773865atural @ P4 @ Q2 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_5950_conjI__realizer,axiom,
    ! [P: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > $o,P4: produc6241069584506657477e_term > option6357759511663192854e_term,Q: produc8923325533196201883nteger > $o,Q2: produc8923325533196201883nteger] :
      ( ( P @ P4 )
     => ( ( Q @ Q2 )
       => ( ( P @ ( produc7822682618958472924nteger @ ( produc8603105652947943368nteger @ P4 @ Q2 ) ) )
          & ( Q @ ( produc7856867400915047194nteger @ ( produc8603105652947943368nteger @ P4 @ Q2 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_5951_conjI__realizer,axiom,
    ! [P: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > $o,P4: produc8551481072490612790e_term > option6357759511663192854e_term,Q: product_prod_int_int > $o,Q2: product_prod_int_int] :
      ( ( P @ P4 )
     => ( ( Q @ Q2 )
       => ( ( P @ ( produc6816164490631068361nt_int @ ( produc5700946648718959541nt_int @ P4 @ Q2 ) ) )
          & ( Q @ ( produc7328097813583171335nt_int @ ( produc5700946648718959541nt_int @ P4 @ Q2 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_5952_conjI__realizer,axiom,
    ! [P: ( int > option6357759511663192854e_term ) > $o,P4: int > option6357759511663192854e_term,Q: product_prod_int_int > $o,Q2: product_prod_int_int] :
      ( ( P @ P4 )
     => ( ( Q @ Q2 )
       => ( ( P @ ( produc6230002227079971283nt_int @ ( produc4305682042979456191nt_int @ P4 @ Q2 ) ) )
          & ( Q @ ( produc3162348030201620241nt_int @ ( produc4305682042979456191nt_int @ P4 @ Q2 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_5953_conjI__realizer,axiom,
    ! [P: int > $o,P4: int,Q: int > $o,Q2: int] :
      ( ( P @ P4 )
     => ( ( Q @ Q2 )
       => ( ( P @ ( product_fst_int_int @ ( product_Pair_int_int @ P4 @ Q2 ) ) )
          & ( Q @ ( product_snd_int_int @ ( product_Pair_int_int @ P4 @ Q2 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_5954_conjI__realizer,axiom,
    ! [P: nat > $o,P4: nat,Q: nat > $o,Q2: nat] :
      ( ( P @ P4 )
     => ( ( Q @ Q2 )
       => ( ( P @ ( product_fst_nat_nat @ ( product_Pair_nat_nat @ P4 @ Q2 ) ) )
          & ( Q @ ( product_snd_nat_nat @ ( product_Pair_nat_nat @ P4 @ Q2 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_5955_exI__realizer,axiom,
    ! [P: produc8923325533196201883nteger > ( code_integer > option6357759511663192854e_term ) > $o,Y3: produc8923325533196201883nteger,X: code_integer > option6357759511663192854e_term] :
      ( ( P @ Y3 @ X )
     => ( P @ ( produc6514156286822040066nteger @ ( produc6137756002093451184nteger @ X @ Y3 ) ) @ ( produc2702340305111172292nteger @ ( produc6137756002093451184nteger @ X @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_5956_exI__realizer,axiom,
    ! [P: produc7822875418678951345atural > ( produc4972180933644002618e_term > option6357759511663192854e_term ) > $o,Y3: produc7822875418678951345atural,X: produc4972180933644002618e_term > option6357759511663192854e_term] :
      ( ( P @ Y3 @ X )
     => ( P @ ( produc3085575039554877691atural @ ( produc3831813291587773865atural @ X @ Y3 ) ) @ ( produc3051390257598303421atural @ ( produc3831813291587773865atural @ X @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_5957_exI__realizer,axiom,
    ! [P: produc8923325533196201883nteger > ( produc6241069584506657477e_term > option6357759511663192854e_term ) > $o,Y3: produc8923325533196201883nteger,X: produc6241069584506657477e_term > option6357759511663192854e_term] :
      ( ( P @ Y3 @ X )
     => ( P @ ( produc7856867400915047194nteger @ ( produc8603105652947943368nteger @ X @ Y3 ) ) @ ( produc7822682618958472924nteger @ ( produc8603105652947943368nteger @ X @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_5958_exI__realizer,axiom,
    ! [P: product_prod_int_int > ( produc8551481072490612790e_term > option6357759511663192854e_term ) > $o,Y3: product_prod_int_int,X: produc8551481072490612790e_term > option6357759511663192854e_term] :
      ( ( P @ Y3 @ X )
     => ( P @ ( produc7328097813583171335nt_int @ ( produc5700946648718959541nt_int @ X @ Y3 ) ) @ ( produc6816164490631068361nt_int @ ( produc5700946648718959541nt_int @ X @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_5959_exI__realizer,axiom,
    ! [P: product_prod_int_int > ( int > option6357759511663192854e_term ) > $o,Y3: product_prod_int_int,X: int > option6357759511663192854e_term] :
      ( ( P @ Y3 @ X )
     => ( P @ ( produc3162348030201620241nt_int @ ( produc4305682042979456191nt_int @ X @ Y3 ) ) @ ( produc6230002227079971283nt_int @ ( produc4305682042979456191nt_int @ X @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_5960_exI__realizer,axiom,
    ! [P: int > int > $o,Y3: int,X: int] :
      ( ( P @ Y3 @ X )
     => ( P @ ( product_snd_int_int @ ( product_Pair_int_int @ X @ Y3 ) ) @ ( product_fst_int_int @ ( product_Pair_int_int @ X @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_5961_exI__realizer,axiom,
    ! [P: nat > nat > $o,Y3: nat,X: nat] :
      ( ( P @ Y3 @ X )
     => ( P @ ( product_snd_nat_nat @ ( product_Pair_nat_nat @ X @ Y3 ) ) @ ( product_fst_nat_nat @ ( product_Pair_nat_nat @ X @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_5962_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: ( code_integer > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o,X: code_integer > option6357759511663192854e_term,Y3: produc8923325533196201883nteger,A: produc8763457246119570046nteger] :
      ( ( P @ X @ Y3 )
     => ( ( A
          = ( produc6137756002093451184nteger @ X @ Y3 ) )
       => ( P @ ( produc2702340305111172292nteger @ A ) @ ( produc6514156286822040066nteger @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_5963_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc7822875418678951345atural > $o,X: produc4972180933644002618e_term > option6357759511663192854e_term,Y3: produc7822875418678951345atural,A: produc989692990947075319atural] :
      ( ( P @ X @ Y3 )
     => ( ( A
          = ( produc3831813291587773865atural @ X @ Y3 ) )
       => ( P @ ( produc3051390257598303421atural @ A ) @ ( produc3085575039554877691atural @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_5964_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc8923325533196201883nteger > $o,X: produc6241069584506657477e_term > option6357759511663192854e_term,Y3: produc8923325533196201883nteger,A: produc1908205239877642774nteger] :
      ( ( P @ X @ Y3 )
     => ( ( A
          = ( produc8603105652947943368nteger @ X @ Y3 ) )
       => ( P @ ( produc7822682618958472924nteger @ A ) @ ( produc7856867400915047194nteger @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_5965_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > product_prod_int_int > $o,X: produc8551481072490612790e_term > option6357759511663192854e_term,Y3: product_prod_int_int,A: produc2285326912895808259nt_int] :
      ( ( P @ X @ Y3 )
     => ( ( A
          = ( produc5700946648718959541nt_int @ X @ Y3 ) )
       => ( P @ ( produc6816164490631068361nt_int @ A ) @ ( produc7328097813583171335nt_int @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_5966_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: ( int > option6357759511663192854e_term ) > product_prod_int_int > $o,X: int > option6357759511663192854e_term,Y3: product_prod_int_int,A: produc7773217078559923341nt_int] :
      ( ( P @ X @ Y3 )
     => ( ( A
          = ( produc4305682042979456191nt_int @ X @ Y3 ) )
       => ( P @ ( produc6230002227079971283nt_int @ A ) @ ( produc3162348030201620241nt_int @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_5967_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: int > int > $o,X: int,Y3: int,A: product_prod_int_int] :
      ( ( P @ X @ Y3 )
     => ( ( A
          = ( product_Pair_int_int @ X @ Y3 ) )
       => ( P @ ( product_fst_int_int @ A ) @ ( product_snd_int_int @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_5968_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: nat > nat > $o,X: nat,Y3: nat,A: product_prod_nat_nat] :
      ( ( P @ X @ Y3 )
     => ( ( A
          = ( product_Pair_nat_nat @ X @ Y3 ) )
       => ( P @ ( product_fst_nat_nat @ A ) @ ( product_snd_nat_nat @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_5969_prod_OatLeast__Suc__atMost__Suc__shift,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups708209901874060359at_nat @ ( comp_nat_nat_nat @ G @ suc ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.atLeast_Suc_atMost_Suc_shift
thf(fact_5970_prod_OatLeast__Suc__atMost__Suc__shift,axiom,
    ! [G: nat > int,M: nat,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups705719431365010083at_int @ ( comp_nat_int_nat @ G @ suc ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.atLeast_Suc_atMost_Suc_shift
thf(fact_5971_prod_OatLeastAtMost__shift__bounds,axiom,
    ! [G: nat > nat,M: nat,K: nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups708209901874060359at_nat @ ( comp_nat_nat_nat @ G @ ( plus_plus_nat @ K ) ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.atLeastAtMost_shift_bounds
thf(fact_5972_prod_OatLeastAtMost__shift__bounds,axiom,
    ! [G: nat > int,M: nat,K: nat,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups705719431365010083at_int @ ( comp_nat_int_nat @ G @ ( plus_plus_nat @ K ) ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.atLeastAtMost_shift_bounds
thf(fact_5973_case__prod__beta,axiom,
    ( produc27273713700761075at_nat
    = ( ^ [F2: nat > nat > product_prod_nat_nat > product_prod_nat_nat,P5: product_prod_nat_nat] : ( F2 @ ( product_fst_nat_nat @ P5 ) @ ( product_snd_nat_nat @ P5 ) ) ) ) ).

% case_prod_beta
thf(fact_5974_case__prod__beta,axiom,
    ( produc8739625826339149834_nat_o
    = ( ^ [F2: nat > nat > product_prod_nat_nat > $o,P5: product_prod_nat_nat] : ( F2 @ ( product_fst_nat_nat @ P5 ) @ ( product_snd_nat_nat @ P5 ) ) ) ) ).

% case_prod_beta
thf(fact_5975_case__prod__beta,axiom,
    ( produc4245557441103728435nt_int
    = ( ^ [F2: int > int > product_prod_int_int,P5: product_prod_int_int] : ( F2 @ ( product_fst_int_int @ P5 ) @ ( product_snd_int_int @ P5 ) ) ) ) ).

% case_prod_beta
thf(fact_5976_case__prod__beta,axiom,
    ( produc4947309494688390418_int_o
    = ( ^ [F2: int > int > $o,P5: product_prod_int_int] : ( F2 @ ( product_fst_int_int @ P5 ) @ ( product_snd_int_int @ P5 ) ) ) ) ).

% case_prod_beta
thf(fact_5977_case__prod__beta,axiom,
    ( produc8211389475949308722nt_int
    = ( ^ [F2: int > int > int,P5: product_prod_int_int] : ( F2 @ ( product_fst_int_int @ P5 ) @ ( product_snd_int_int @ P5 ) ) ) ) ).

% case_prod_beta
thf(fact_5978_split__beta,axiom,
    ( produc27273713700761075at_nat
    = ( ^ [F2: nat > nat > product_prod_nat_nat > product_prod_nat_nat,Prod3: product_prod_nat_nat] : ( F2 @ ( product_fst_nat_nat @ Prod3 ) @ ( product_snd_nat_nat @ Prod3 ) ) ) ) ).

% split_beta
thf(fact_5979_split__beta,axiom,
    ( produc8739625826339149834_nat_o
    = ( ^ [F2: nat > nat > product_prod_nat_nat > $o,Prod3: product_prod_nat_nat] : ( F2 @ ( product_fst_nat_nat @ Prod3 ) @ ( product_snd_nat_nat @ Prod3 ) ) ) ) ).

% split_beta
thf(fact_5980_split__beta,axiom,
    ( produc4245557441103728435nt_int
    = ( ^ [F2: int > int > product_prod_int_int,Prod3: product_prod_int_int] : ( F2 @ ( product_fst_int_int @ Prod3 ) @ ( product_snd_int_int @ Prod3 ) ) ) ) ).

% split_beta
thf(fact_5981_split__beta,axiom,
    ( produc4947309494688390418_int_o
    = ( ^ [F2: int > int > $o,Prod3: product_prod_int_int] : ( F2 @ ( product_fst_int_int @ Prod3 ) @ ( product_snd_int_int @ Prod3 ) ) ) ) ).

% split_beta
thf(fact_5982_split__beta,axiom,
    ( produc8211389475949308722nt_int
    = ( ^ [F2: int > int > int,Prod3: product_prod_int_int] : ( F2 @ ( product_fst_int_int @ Prod3 ) @ ( product_snd_int_int @ Prod3 ) ) ) ) ).

% split_beta
thf(fact_5983_Product__Type_OCollect__case__prodD,axiom,
    ! [X: product_prod_nat_nat,A3: nat > nat > $o] :
      ( ( member8440522571783428010at_nat @ X @ ( collec3392354462482085612at_nat @ ( produc6081775807080527818_nat_o @ A3 ) ) )
     => ( A3 @ ( product_fst_nat_nat @ X ) @ ( product_snd_nat_nat @ X ) ) ) ).

% Product_Type.Collect_case_prodD
thf(fact_5984_Product__Type_OCollect__case__prodD,axiom,
    ! [X: product_prod_int_int,A3: int > int > $o] :
      ( ( member5262025264175285858nt_int @ X @ ( collec213857154873943460nt_int @ ( produc4947309494688390418_int_o @ A3 ) ) )
     => ( A3 @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ X ) ) ) ).

% Product_Type.Collect_case_prodD
thf(fact_5985_prod_Oshift__bounds__cl__Suc__ivl,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.shift_bounds_cl_Suc_ivl
thf(fact_5986_prod_Oshift__bounds__cl__Suc__ivl,axiom,
    ! [G: nat > int,M: nat,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.shift_bounds_cl_Suc_ivl
thf(fact_5987_prod_Oshift__bounds__cl__nat__ivl,axiom,
    ! [G: nat > nat,M: nat,K: nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( G @ ( plus_plus_nat @ I2 @ K ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.shift_bounds_cl_nat_ivl
thf(fact_5988_prod_Oshift__bounds__cl__nat__ivl,axiom,
    ! [G: nat > int,M: nat,K: nat,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( G @ ( plus_plus_nat @ I2 @ K ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.shift_bounds_cl_nat_ivl
thf(fact_5989_power__sum,axiom,
    ! [C: nat,F: nat > nat,A3: set_nat] :
      ( ( power_power_nat @ C @ ( groups3542108847815614940at_nat @ F @ A3 ) )
      = ( groups708209901874060359at_nat
        @ ^ [A4: nat] : ( power_power_nat @ C @ ( F @ A4 ) )
        @ A3 ) ) ).

% power_sum
thf(fact_5990_power__sum,axiom,
    ! [C: int,F: nat > nat,A3: set_nat] :
      ( ( power_power_int @ C @ ( groups3542108847815614940at_nat @ F @ A3 ) )
      = ( groups705719431365010083at_int
        @ ^ [A4: nat] : ( power_power_int @ C @ ( F @ A4 ) )
        @ A3 ) ) ).

% power_sum
thf(fact_5991_power__sum,axiom,
    ! [C: int,F: int > nat,A3: set_int] :
      ( ( power_power_int @ C @ ( groups4541462559716669496nt_nat @ F @ A3 ) )
      = ( groups1705073143266064639nt_int
        @ ^ [A4: int] : ( power_power_int @ C @ ( F @ A4 ) )
        @ A3 ) ) ).

% power_sum
thf(fact_5992_case__prod__beta_H,axiom,
    ( produc27273713700761075at_nat
    = ( ^ [F2: nat > nat > product_prod_nat_nat > product_prod_nat_nat,X4: product_prod_nat_nat] : ( F2 @ ( product_fst_nat_nat @ X4 ) @ ( product_snd_nat_nat @ X4 ) ) ) ) ).

% case_prod_beta'
thf(fact_5993_case__prod__beta_H,axiom,
    ( produc8739625826339149834_nat_o
    = ( ^ [F2: nat > nat > product_prod_nat_nat > $o,X4: product_prod_nat_nat] : ( F2 @ ( product_fst_nat_nat @ X4 ) @ ( product_snd_nat_nat @ X4 ) ) ) ) ).

% case_prod_beta'
thf(fact_5994_case__prod__beta_H,axiom,
    ( produc4245557441103728435nt_int
    = ( ^ [F2: int > int > product_prod_int_int,X4: product_prod_int_int] : ( F2 @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ X4 ) ) ) ) ).

% case_prod_beta'
thf(fact_5995_case__prod__beta_H,axiom,
    ( produc4947309494688390418_int_o
    = ( ^ [F2: int > int > $o,X4: product_prod_int_int] : ( F2 @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ X4 ) ) ) ) ).

% case_prod_beta'
thf(fact_5996_case__prod__beta_H,axiom,
    ( produc8211389475949308722nt_int
    = ( ^ [F2: int > int > int,X4: product_prod_int_int] : ( F2 @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ X4 ) ) ) ) ).

% case_prod_beta'
thf(fact_5997_case__prod__unfold,axiom,
    ( produc27273713700761075at_nat
    = ( ^ [C3: nat > nat > product_prod_nat_nat > product_prod_nat_nat,P5: product_prod_nat_nat] : ( C3 @ ( product_fst_nat_nat @ P5 ) @ ( product_snd_nat_nat @ P5 ) ) ) ) ).

% case_prod_unfold
thf(fact_5998_case__prod__unfold,axiom,
    ( produc8739625826339149834_nat_o
    = ( ^ [C3: nat > nat > product_prod_nat_nat > $o,P5: product_prod_nat_nat] : ( C3 @ ( product_fst_nat_nat @ P5 ) @ ( product_snd_nat_nat @ P5 ) ) ) ) ).

% case_prod_unfold
thf(fact_5999_case__prod__unfold,axiom,
    ( produc4245557441103728435nt_int
    = ( ^ [C3: int > int > product_prod_int_int,P5: product_prod_int_int] : ( C3 @ ( product_fst_int_int @ P5 ) @ ( product_snd_int_int @ P5 ) ) ) ) ).

% case_prod_unfold
thf(fact_6000_case__prod__unfold,axiom,
    ( produc4947309494688390418_int_o
    = ( ^ [C3: int > int > $o,P5: product_prod_int_int] : ( C3 @ ( product_fst_int_int @ P5 ) @ ( product_snd_int_int @ P5 ) ) ) ) ).

% case_prod_unfold
thf(fact_6001_case__prod__unfold,axiom,
    ( produc8211389475949308722nt_int
    = ( ^ [C3: int > int > int,P5: product_prod_int_int] : ( C3 @ ( product_fst_int_int @ P5 ) @ ( product_snd_int_int @ P5 ) ) ) ) ).

% case_prod_unfold
thf(fact_6002_exE__realizer,axiom,
    ! [P: nat > nat > $o,P4: product_prod_nat_nat,Q: ( product_prod_nat_nat > product_prod_nat_nat ) > $o,F: nat > nat > product_prod_nat_nat > product_prod_nat_nat] :
      ( ( P @ ( product_snd_nat_nat @ P4 ) @ ( product_fst_nat_nat @ P4 ) )
     => ( ! [X5: nat,Y4: nat] :
            ( ( P @ Y4 @ X5 )
           => ( Q @ ( F @ X5 @ Y4 ) ) )
       => ( Q @ ( produc27273713700761075at_nat @ F @ P4 ) ) ) ) ).

% exE_realizer
thf(fact_6003_exE__realizer,axiom,
    ! [P: nat > nat > $o,P4: product_prod_nat_nat,Q: ( product_prod_nat_nat > $o ) > $o,F: nat > nat > product_prod_nat_nat > $o] :
      ( ( P @ ( product_snd_nat_nat @ P4 ) @ ( product_fst_nat_nat @ P4 ) )
     => ( ! [X5: nat,Y4: nat] :
            ( ( P @ Y4 @ X5 )
           => ( Q @ ( F @ X5 @ Y4 ) ) )
       => ( Q @ ( produc8739625826339149834_nat_o @ F @ P4 ) ) ) ) ).

% exE_realizer
thf(fact_6004_exE__realizer,axiom,
    ! [P: int > int > $o,P4: product_prod_int_int,Q: product_prod_int_int > $o,F: int > int > product_prod_int_int] :
      ( ( P @ ( product_snd_int_int @ P4 ) @ ( product_fst_int_int @ P4 ) )
     => ( ! [X5: int,Y4: int] :
            ( ( P @ Y4 @ X5 )
           => ( Q @ ( F @ X5 @ Y4 ) ) )
       => ( Q @ ( produc4245557441103728435nt_int @ F @ P4 ) ) ) ) ).

% exE_realizer
thf(fact_6005_exE__realizer,axiom,
    ! [P: int > int > $o,P4: product_prod_int_int,Q: $o > $o,F: int > int > $o] :
      ( ( P @ ( product_snd_int_int @ P4 ) @ ( product_fst_int_int @ P4 ) )
     => ( ! [X5: int,Y4: int] :
            ( ( P @ Y4 @ X5 )
           => ( Q @ ( F @ X5 @ Y4 ) ) )
       => ( Q @ ( produc4947309494688390418_int_o @ F @ P4 ) ) ) ) ).

% exE_realizer
thf(fact_6006_exE__realizer,axiom,
    ! [P: int > int > $o,P4: product_prod_int_int,Q: int > $o,F: int > int > int] :
      ( ( P @ ( product_snd_int_int @ P4 ) @ ( product_fst_int_int @ P4 ) )
     => ( ! [X5: int,Y4: int] :
            ( ( P @ Y4 @ X5 )
           => ( Q @ ( F @ X5 @ Y4 ) ) )
       => ( Q @ ( produc8211389475949308722nt_int @ F @ P4 ) ) ) ) ).

% exE_realizer
thf(fact_6007_prod__le__1,axiom,
    ! [A3: set_nat,F: nat > code_integer] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ X5 ) )
            & ( ord_le3102999989581377725nteger @ ( F @ X5 ) @ one_one_Code_integer ) ) )
     => ( ord_le3102999989581377725nteger @ ( groups3455450783089532116nteger @ F @ A3 ) @ one_one_Code_integer ) ) ).

% prod_le_1
thf(fact_6008_prod__le__1,axiom,
    ! [A3: set_int,F: int > code_integer] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ X5 ) )
            & ( ord_le3102999989581377725nteger @ ( F @ X5 ) @ one_one_Code_integer ) ) )
     => ( ord_le3102999989581377725nteger @ ( groups3827104343326376752nteger @ F @ A3 ) @ one_one_Code_integer ) ) ).

% prod_le_1
thf(fact_6009_prod__le__1,axiom,
    ! [A3: set_nat,F: nat > code_natural] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ X5 ) )
            & ( ord_le1926595141338095240atural @ ( F @ X5 ) @ one_one_Code_natural ) ) )
     => ( ord_le1926595141338095240atural @ ( groups2279045934846249631atural @ F @ A3 ) @ one_one_Code_natural ) ) ).

% prod_le_1
thf(fact_6010_prod__le__1,axiom,
    ! [A3: set_int,F: int > code_natural] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ X5 ) )
            & ( ord_le1926595141338095240atural @ ( F @ X5 ) @ one_one_Code_natural ) ) )
     => ( ord_le1926595141338095240atural @ ( groups2650699495083094267atural @ F @ A3 ) @ one_one_Code_natural ) ) ).

% prod_le_1
thf(fact_6011_prod__le__1,axiom,
    ! [A3: set_nat,F: nat > rat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ ( F @ X5 ) )
            & ( ord_less_eq_rat @ ( F @ X5 ) @ one_one_rat ) ) )
     => ( ord_less_eq_rat @ ( groups73079841787564623at_rat @ F @ A3 ) @ one_one_rat ) ) ).

% prod_le_1
thf(fact_6012_prod__le__1,axiom,
    ! [A3: set_int,F: int > rat] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ ( F @ X5 ) )
            & ( ord_less_eq_rat @ ( F @ X5 ) @ one_one_rat ) ) )
     => ( ord_less_eq_rat @ ( groups1072433553688619179nt_rat @ F @ A3 ) @ one_one_rat ) ) ).

% prod_le_1
thf(fact_6013_prod__le__1,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ ( F @ X5 ) )
            & ( ord_less_eq_nat @ ( F @ X5 ) @ one_one_nat ) ) )
     => ( ord_less_eq_nat @ ( groups1707563613775114915nt_nat @ F @ A3 ) @ one_one_nat ) ) ).

% prod_le_1
thf(fact_6014_prod__le__1,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ ( F @ X5 ) )
            & ( ord_less_eq_nat @ ( F @ X5 ) @ one_one_nat ) ) )
     => ( ord_less_eq_nat @ ( groups708209901874060359at_nat @ F @ A3 ) @ one_one_nat ) ) ).

% prod_le_1
thf(fact_6015_prod__le__1,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ A3 )
         => ( ( ord_less_eq_int @ zero_zero_int @ ( F @ X5 ) )
            & ( ord_less_eq_int @ ( F @ X5 ) @ one_one_int ) ) )
     => ( ord_less_eq_int @ ( groups705719431365010083at_int @ F @ A3 ) @ one_one_int ) ) ).

% prod_le_1
thf(fact_6016_prod__le__1,axiom,
    ! [A3: set_int,F: int > int] :
      ( ! [X5: int] :
          ( ( member_int @ X5 @ A3 )
         => ( ( ord_less_eq_int @ zero_zero_int @ ( F @ X5 ) )
            & ( ord_less_eq_int @ ( F @ X5 ) @ one_one_int ) ) )
     => ( ord_less_eq_int @ ( groups1705073143266064639nt_int @ F @ A3 ) @ one_one_int ) ) ).

% prod_le_1
thf(fact_6017_divides__aux__def,axiom,
    ( unique6322359934112328802ux_nat
    = ( ^ [Qr: product_prod_nat_nat] :
          ( ( product_snd_nat_nat @ Qr )
          = zero_zero_nat ) ) ) ).

% divides_aux_def
thf(fact_6018_divides__aux__def,axiom,
    ( unique6319869463603278526ux_int
    = ( ^ [Qr: product_prod_int_int] :
          ( ( product_snd_int_int @ Qr )
          = zero_zero_int ) ) ) ).

% divides_aux_def
thf(fact_6019_divides__aux__def,axiom,
    ( unique5706413561485394159nteger
    = ( ^ [Qr: produc8923325533196201883nteger] :
          ( ( produc6174133586879617921nteger @ Qr )
          = zero_z3403309356797280102nteger ) ) ) ).

% divides_aux_def
thf(fact_6020_prod_Osplit__sel__asm,axiom,
    ! [P: ( product_prod_nat_nat > product_prod_nat_nat ) > $o,F: nat > nat > product_prod_nat_nat > product_prod_nat_nat,Prod: product_prod_nat_nat] :
      ( ( P @ ( produc27273713700761075at_nat @ F @ Prod ) )
      = ( ~ ( ( Prod
              = ( product_Pair_nat_nat @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) ) )
            & ~ ( P @ ( F @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) ) ) ) ) ) ).

% prod.split_sel_asm
thf(fact_6021_prod_Osplit__sel__asm,axiom,
    ! [P: ( product_prod_nat_nat > $o ) > $o,F: nat > nat > product_prod_nat_nat > $o,Prod: product_prod_nat_nat] :
      ( ( P @ ( produc8739625826339149834_nat_o @ F @ Prod ) )
      = ( ~ ( ( Prod
              = ( product_Pair_nat_nat @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) ) )
            & ~ ( P @ ( F @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) ) ) ) ) ) ).

% prod.split_sel_asm
thf(fact_6022_prod_Osplit__sel__asm,axiom,
    ! [P: product_prod_int_int > $o,F: int > int > product_prod_int_int,Prod: product_prod_int_int] :
      ( ( P @ ( produc4245557441103728435nt_int @ F @ Prod ) )
      = ( ~ ( ( Prod
              = ( product_Pair_int_int @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) )
            & ~ ( P @ ( F @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) ) ) ) ) ).

% prod.split_sel_asm
thf(fact_6023_prod_Osplit__sel__asm,axiom,
    ! [P: $o > $o,F: int > int > $o,Prod: product_prod_int_int] :
      ( ( P @ ( produc4947309494688390418_int_o @ F @ Prod ) )
      = ( ~ ( ( Prod
              = ( product_Pair_int_int @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) )
            & ~ ( P @ ( F @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) ) ) ) ) ).

% prod.split_sel_asm
thf(fact_6024_prod_Osplit__sel__asm,axiom,
    ! [P: int > $o,F: int > int > int,Prod: product_prod_int_int] :
      ( ( P @ ( produc8211389475949308722nt_int @ F @ Prod ) )
      = ( ~ ( ( Prod
              = ( product_Pair_int_int @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) )
            & ~ ( P @ ( F @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) ) ) ) ) ).

% prod.split_sel_asm
thf(fact_6025_prod_Osplit__sel,axiom,
    ! [P: ( product_prod_nat_nat > product_prod_nat_nat ) > $o,F: nat > nat > product_prod_nat_nat > product_prod_nat_nat,Prod: product_prod_nat_nat] :
      ( ( P @ ( produc27273713700761075at_nat @ F @ Prod ) )
      = ( ( Prod
          = ( product_Pair_nat_nat @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) ) )
       => ( P @ ( F @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) ) ) ) ) ).

% prod.split_sel
thf(fact_6026_prod_Osplit__sel,axiom,
    ! [P: ( product_prod_nat_nat > $o ) > $o,F: nat > nat > product_prod_nat_nat > $o,Prod: product_prod_nat_nat] :
      ( ( P @ ( produc8739625826339149834_nat_o @ F @ Prod ) )
      = ( ( Prod
          = ( product_Pair_nat_nat @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) ) )
       => ( P @ ( F @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) ) ) ) ) ).

% prod.split_sel
thf(fact_6027_prod_Osplit__sel,axiom,
    ! [P: product_prod_int_int > $o,F: int > int > product_prod_int_int,Prod: product_prod_int_int] :
      ( ( P @ ( produc4245557441103728435nt_int @ F @ Prod ) )
      = ( ( Prod
          = ( product_Pair_int_int @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) )
       => ( P @ ( F @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) ) ) ) ).

% prod.split_sel
thf(fact_6028_prod_Osplit__sel,axiom,
    ! [P: $o > $o,F: int > int > $o,Prod: product_prod_int_int] :
      ( ( P @ ( produc4947309494688390418_int_o @ F @ Prod ) )
      = ( ( Prod
          = ( product_Pair_int_int @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) )
       => ( P @ ( F @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) ) ) ) ).

% prod.split_sel
thf(fact_6029_prod_Osplit__sel,axiom,
    ! [P: int > $o,F: int > int > int,Prod: product_prod_int_int] :
      ( ( P @ ( produc8211389475949308722nt_int @ F @ Prod ) )
      = ( ( Prod
          = ( product_Pair_int_int @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) )
       => ( P @ ( F @ ( product_fst_int_int @ Prod ) @ ( product_snd_int_int @ Prod ) ) ) ) ) ).

% prod.split_sel
thf(fact_6030_prod_OatLeastAtMost__rev,axiom,
    ! [G: nat > nat,N: nat,M: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ N @ M ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ N @ M ) ) ) ).

% prod.atLeastAtMost_rev
thf(fact_6031_prod_OatLeastAtMost__rev,axiom,
    ! [G: nat > int,N: nat,M: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ N @ M ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ N @ M ) ) ) ).

% prod.atLeastAtMost_rev
thf(fact_6032_case__prod__comp,axiom,
    ! [F: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger,G: code_integer > code_integer > code_integer,X: produc3346328345660746739nteger] :
      ( ( produc4281629032016041417nteger @ ( comp_C8797469213163452608nteger @ F @ G ) @ X )
      = ( F @ ( G @ ( produc1861665112190112313nteger @ X ) ) @ ( produc7955729907432593271nteger @ X ) ) ) ).

% case_prod_comp
thf(fact_6033_prod_OatLeast0__atMost__Suc,axiom,
    ! [G: nat > code_integer,N: nat] :
      ( ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_3573771949741848930nteger @ ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ).

% prod.atLeast0_atMost_Suc
thf(fact_6034_prod_OatLeast0__atMost__Suc,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_rat @ ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ).

% prod.atLeast0_atMost_Suc
thf(fact_6035_prod_OatLeast0__atMost__Suc,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_nat @ ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ).

% prod.atLeast0_atMost_Suc
thf(fact_6036_prod_OatLeast0__atMost__Suc,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_int @ ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) @ ( G @ ( suc @ N ) ) ) ) ).

% prod.atLeast0_atMost_Suc
thf(fact_6037_prod_OatLeast0__atMost__Suc__shift,axiom,
    ! [G: nat > code_integer,N: nat] :
      ( ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_3573771949741848930nteger @ ( G @ zero_zero_nat ) @ ( groups3455450783089532116nteger @ ( comp_n3898172953802868194er_nat @ G @ suc ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ) ).

% prod.atLeast0_atMost_Suc_shift
thf(fact_6038_prod_OatLeast0__atMost__Suc__shift,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_rat @ ( G @ zero_zero_nat ) @ ( groups73079841787564623at_rat @ ( comp_nat_rat_nat @ G @ suc ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ) ).

% prod.atLeast0_atMost_Suc_shift
thf(fact_6039_prod_OatLeast0__atMost__Suc__shift,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_nat @ ( G @ zero_zero_nat ) @ ( groups708209901874060359at_nat @ ( comp_nat_nat_nat @ G @ suc ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ) ).

% prod.atLeast0_atMost_Suc_shift
thf(fact_6040_prod_OatLeast0__atMost__Suc__shift,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_int @ ( G @ zero_zero_nat ) @ ( groups705719431365010083at_int @ ( comp_nat_int_nat @ G @ suc ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ) ).

% prod.atLeast0_atMost_Suc_shift
thf(fact_6041_snd__diag__snd,axiom,
    ( ( comp_P5356232565778667509nt_int @ product_snd_int_int
      @ ( comp_i5941103828406351439nt_int
        @ ^ [X4: int] : ( product_Pair_int_int @ X4 @ X4 )
        @ product_snd_int_int ) )
    = product_snd_int_int ) ).

% snd_diag_snd
thf(fact_6042_snd__diag__snd,axiom,
    ( ( comp_P1567445206330693457at_nat @ product_snd_nat_nat
      @ ( comp_n829915685812334579at_nat
        @ ^ [X4: nat] : ( product_Pair_nat_nat @ X4 @ X4 )
        @ product_snd_nat_nat ) )
    = product_snd_nat_nat ) ).

% snd_diag_snd
thf(fact_6043_prod_OSuc__reindex__ivl,axiom,
    ! [M: nat,N: nat,G: nat > code_integer] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( times_3573771949741848930nteger @ ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) )
        = ( times_3573771949741848930nteger @ ( G @ M )
          @ ( groups3455450783089532116nteger
            @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ) ).

% prod.Suc_reindex_ivl
thf(fact_6044_prod_OSuc__reindex__ivl,axiom,
    ! [M: nat,N: nat,G: nat > rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( times_times_rat @ ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) )
        = ( times_times_rat @ ( G @ M )
          @ ( groups73079841787564623at_rat
            @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ) ).

% prod.Suc_reindex_ivl
thf(fact_6045_prod_OSuc__reindex__ivl,axiom,
    ! [M: nat,N: nat,G: nat > nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( times_times_nat @ ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) )
        = ( times_times_nat @ ( G @ M )
          @ ( groups708209901874060359at_nat
            @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ) ).

% prod.Suc_reindex_ivl
thf(fact_6046_prod_OSuc__reindex__ivl,axiom,
    ! [M: nat,N: nat,G: nat > int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( times_times_int @ ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( G @ ( suc @ N ) ) )
        = ( times_times_int @ ( G @ M )
          @ ( groups705719431365010083at_int
            @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
            @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ) ).

% prod.Suc_reindex_ivl
thf(fact_6047_prod_OatMost__Suc__shift,axiom,
    ! [G: nat > code_integer,N: nat] :
      ( ( groups3455450783089532116nteger @ G @ ( set_ord_atMost_nat @ ( suc @ N ) ) )
      = ( times_3573771949741848930nteger @ ( G @ zero_zero_nat )
        @ ( groups3455450783089532116nteger
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% prod.atMost_Suc_shift
thf(fact_6048_prod_OatMost__Suc__shift,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups73079841787564623at_rat @ G @ ( set_ord_atMost_nat @ ( suc @ N ) ) )
      = ( times_times_rat @ ( G @ zero_zero_nat )
        @ ( groups73079841787564623at_rat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% prod.atMost_Suc_shift
thf(fact_6049_prod_OatMost__Suc__shift,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_ord_atMost_nat @ ( suc @ N ) ) )
      = ( times_times_nat @ ( G @ zero_zero_nat )
        @ ( groups708209901874060359at_nat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% prod.atMost_Suc_shift
thf(fact_6050_prod_OatMost__Suc__shift,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_ord_atMost_nat @ ( suc @ N ) ) )
      = ( times_times_int @ ( G @ zero_zero_nat )
        @ ( groups705719431365010083at_int
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% prod.atMost_Suc_shift
thf(fact_6051_prod_OatLeast__atMost__pred__shift,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups708209901874060359at_nat
        @ ( comp_nat_nat_nat @ G
          @ ^ [N5: nat] : ( minus_minus_nat @ N5 @ ( suc @ zero_zero_nat ) ) )
        @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.atLeast_atMost_pred_shift
thf(fact_6052_prod_OatLeast__atMost__pred__shift,axiom,
    ! [G: nat > int,M: nat,N: nat] :
      ( ( groups705719431365010083at_int
        @ ( comp_nat_int_nat @ G
          @ ^ [N5: nat] : ( minus_minus_nat @ N5 @ ( suc @ zero_zero_nat ) ) )
        @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.atLeast_atMost_pred_shift
thf(fact_6053_fact__prod,axiom,
    ( semiri1406184849735516958ct_int
    = ( ^ [N5: nat] :
          ( semiri1314217659103216013at_int
          @ ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ one_one_nat @ N5 ) ) ) ) ) ).

% fact_prod
thf(fact_6054_fact__prod,axiom,
    ( semiri1408675320244567234ct_nat
    = ( ^ [N5: nat] :
          ( semiri1316708129612266289at_nat
          @ ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ one_one_nat @ N5 ) ) ) ) ) ).

% fact_prod
thf(fact_6055_prod__atLeastAtMost__code,axiom,
    ! [F: nat > code_natural,A: nat,B: nat] :
      ( ( groups2279045934846249631atural @ F @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_fo9131927060563008058atural
        @ ^ [A4: nat] : ( times_2397367101498566445atural @ ( F @ A4 ) )
        @ A
        @ B
        @ one_one_Code_natural ) ) ).

% prod_atLeastAtMost_code
thf(fact_6056_prod__atLeastAtMost__code,axiom,
    ! [F: nat > code_integer,A: nat,B: nat] :
      ( ( groups3455450783089532116nteger @ F @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_fo1084959871951514735nteger
        @ ^ [A4: nat] : ( times_3573771949741848930nteger @ ( F @ A4 ) )
        @ A
        @ B
        @ one_one_Code_integer ) ) ).

% prod_atLeastAtMost_code
thf(fact_6057_prod__atLeastAtMost__code,axiom,
    ! [F: nat > rat,A: nat,B: nat] :
      ( ( groups73079841787564623at_rat @ F @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_fo1949268297981939178at_rat
        @ ^ [A4: nat] : ( times_times_rat @ ( F @ A4 ) )
        @ A
        @ B
        @ one_one_rat ) ) ).

% prod_atLeastAtMost_code
thf(fact_6058_prod__atLeastAtMost__code,axiom,
    ! [F: nat > nat,A: nat,B: nat] :
      ( ( groups708209901874060359at_nat @ F @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_fo2584398358068434914at_nat
        @ ^ [A4: nat] : ( times_times_nat @ ( F @ A4 ) )
        @ A
        @ B
        @ one_one_nat ) ) ).

% prod_atLeastAtMost_code
thf(fact_6059_prod__atLeastAtMost__code,axiom,
    ! [F: nat > int,A: nat,B: nat] :
      ( ( groups705719431365010083at_int @ F @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_fo2581907887559384638at_int
        @ ^ [A4: nat] : ( times_times_int @ ( F @ A4 ) )
        @ A
        @ B
        @ one_one_int ) ) ).

% prod_atLeastAtMost_code
thf(fact_6060_fst__snd__flip,axiom,
    ( produc8030462327630046442e_term
    = ( comp_P5265141440952980950e_term @ produc6514156286822040066nteger
      @ ( produc9040295013417217025nteger
        @ ^ [X4: produc8923325533196201883nteger,Y: code_integer > option6357759511663192854e_term] : ( produc6137756002093451184nteger @ Y @ X4 ) ) ) ) ).

% fst_snd_flip
thf(fact_6061_fst__snd__flip,axiom,
    ( produc2680273185390086621e_term
    = ( comp_P3964586916483566246e_term @ produc3085575039554877691atural
      @ ( produc868849831700739565atural
        @ ^ [X4: produc7822875418678951345atural,Y: produc4972180933644002618e_term > option6357759511663192854e_term] : ( produc3831813291587773865atural @ Y @ X4 ) ) ) ) ).

% fst_snd_flip
thf(fact_6062_fst__snd__flip,axiom,
    ( produc1117956856558811858e_term
    = ( comp_P1663382703091044646e_term @ produc7856867400915047194nteger
      @ ( produc5068368601420144385nteger
        @ ^ [X4: produc8923325533196201883nteger,Y: produc6241069584506657477e_term > option6357759511663192854e_term] : ( produc8603105652947943368nteger @ Y @ X4 ) ) ) ) ).

% fst_snd_flip
thf(fact_6063_fst__snd__flip,axiom,
    ( produc6335124012134732001e_term
    = ( comp_P4057098934159210662e_term @ produc7328097813583171335nt_int
      @ ( produc199769199162113789nt_int
        @ ^ [X4: product_prod_int_int,Y: produc8551481072490612790e_term > option6357759511663192854e_term] : ( produc5700946648718959541nt_int @ Y @ X4 ) ) ) ) ).

% fst_snd_flip
thf(fact_6064_fst__snd__flip,axiom,
    ( produc217921407547260247e_term
    = ( comp_P5363713469694551954e_term @ produc3162348030201620241nt_int
      @ ( produc3478612561300218621nt_int
        @ ^ [X4: product_prod_int_int,Y: int > option6357759511663192854e_term] : ( produc4305682042979456191nt_int @ Y @ X4 ) ) ) ) ).

% fst_snd_flip
thf(fact_6065_fst__snd__flip,axiom,
    ( product_fst_nat_nat
    = ( comp_P1567445206330693457at_nat @ product_snd_nat_nat
      @ ( produc2626176000494625587at_nat
        @ ^ [X4: nat,Y: nat] : ( product_Pair_nat_nat @ Y @ X4 ) ) ) ) ).

% fst_snd_flip
thf(fact_6066_fst__snd__flip,axiom,
    ( product_fst_int_int
    = ( comp_P5356232565778667509nt_int @ product_snd_int_int
      @ ( produc4245557441103728435nt_int
        @ ^ [X4: int,Y: int] : ( product_Pair_int_int @ Y @ X4 ) ) ) ) ).

% fst_snd_flip
thf(fact_6067_snd__fst__flip,axiom,
    ( produc2618906272486138408e_term
    = ( comp_P2923453866557446737e_term @ produc2702340305111172292nteger
      @ ( produc9040295013417217025nteger
        @ ^ [X4: produc8923325533196201883nteger,Y: code_integer > option6357759511663192854e_term] : ( produc6137756002093451184nteger @ Y @ X4 ) ) ) ) ).

% snd_fst_flip
thf(fact_6068_snd__fst__flip,axiom,
    ( produc2714457967346660891e_term
    = ( comp_P4560647100477330970e_term @ produc3051390257598303421atural
      @ ( produc868849831700739565atural
        @ ^ [X4: produc7822875418678951345atural,Y: produc4972180933644002618e_term > option6357759511663192854e_term] : ( produc3831813291587773865atural @ Y @ X4 ) ) ) ) ).

% snd_fst_flip
thf(fact_6069_snd__fst__flip,axiom,
    ( produc1152141638515386128e_term
    = ( comp_P8650103696410638905e_term @ produc7822682618958472924nteger
      @ ( produc5068368601420144385nteger
        @ ^ [X4: produc8923325533196201883nteger,Y: produc6241069584506657477e_term > option6357759511663192854e_term] : ( produc8603105652947943368nteger @ Y @ X4 ) ) ) ) ).

% snd_fst_flip
thf(fact_6070_snd__fst__flip,axiom,
    ( produc6847057335086834975e_term
    = ( comp_P8577347034251779110e_term @ produc6816164490631068361nt_int
      @ ( produc199769199162113789nt_int
        @ ^ [X4: product_prod_int_int,Y: produc8551481072490612790e_term > option6357759511663192854e_term] : ( produc5700946648718959541nt_int @ Y @ X4 ) ) ) ) ).

% snd_fst_flip
thf(fact_6071_snd__fst__flip,axiom,
    ( produc6373639247523685013e_term
    = ( comp_P1875353012086385820e_term @ produc6230002227079971283nt_int
      @ ( produc3478612561300218621nt_int
        @ ^ [X4: product_prod_int_int,Y: int > option6357759511663192854e_term] : ( produc4305682042979456191nt_int @ Y @ X4 ) ) ) ) ).

% snd_fst_flip
thf(fact_6072_snd__fst__flip,axiom,
    ( product_snd_nat_nat
    = ( comp_P1567445206330693457at_nat @ product_fst_nat_nat
      @ ( produc2626176000494625587at_nat
        @ ^ [X4: nat,Y: nat] : ( product_Pair_nat_nat @ Y @ X4 ) ) ) ) ).

% snd_fst_flip
thf(fact_6073_snd__fst__flip,axiom,
    ( product_snd_int_int
    = ( comp_P5356232565778667509nt_int @ product_fst_int_int
      @ ( produc4245557441103728435nt_int
        @ ^ [X4: int,Y: int] : ( product_Pair_int_int @ Y @ X4 ) ) ) ) ).

% snd_fst_flip
thf(fact_6074_prod_OatLeastAtMost__shift__0,axiom,
    ! [M: nat,N: nat,G: nat > nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( groups708209901874060359at_nat @ ( comp_nat_nat_nat @ G @ ( plus_plus_nat @ M ) ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% prod.atLeastAtMost_shift_0
thf(fact_6075_prod_OatLeastAtMost__shift__0,axiom,
    ! [M: nat,N: nat,G: nat > int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( groups705719431365010083at_int @ ( comp_nat_int_nat @ G @ ( plus_plus_nat @ M ) ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% prod.atLeastAtMost_shift_0
thf(fact_6076_prod_Oub__add__nat,axiom,
    ! [M: nat,N: nat,G: nat > code_integer,P4: nat] :
      ( ( ord_less_eq_nat @ M @ ( plus_plus_nat @ N @ one_one_nat ) )
     => ( ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ M @ ( plus_plus_nat @ N @ P4 ) ) )
        = ( times_3573771949741848930nteger @ ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ ( plus_plus_nat @ N @ P4 ) ) ) ) ) ) ).

% prod.ub_add_nat
thf(fact_6077_prod_Oub__add__nat,axiom,
    ! [M: nat,N: nat,G: nat > rat,P4: nat] :
      ( ( ord_less_eq_nat @ M @ ( plus_plus_nat @ N @ one_one_nat ) )
     => ( ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ ( plus_plus_nat @ N @ P4 ) ) )
        = ( times_times_rat @ ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ ( plus_plus_nat @ N @ P4 ) ) ) ) ) ) ).

% prod.ub_add_nat
thf(fact_6078_prod_Oub__add__nat,axiom,
    ! [M: nat,N: nat,G: nat > nat,P4: nat] :
      ( ( ord_less_eq_nat @ M @ ( plus_plus_nat @ N @ one_one_nat ) )
     => ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ ( plus_plus_nat @ N @ P4 ) ) )
        = ( times_times_nat @ ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ ( plus_plus_nat @ N @ P4 ) ) ) ) ) ) ).

% prod.ub_add_nat
thf(fact_6079_prod_Oub__add__nat,axiom,
    ! [M: nat,N: nat,G: nat > int,P4: nat] :
      ( ( ord_less_eq_nat @ M @ ( plus_plus_nat @ N @ one_one_nat ) )
     => ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ M @ ( plus_plus_nat @ N @ P4 ) ) )
        = ( times_times_int @ ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) ) @ ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ ( plus_plus_nat @ N @ P4 ) ) ) ) ) ) ).

% prod.ub_add_nat
thf(fact_6080_fst__diag__snd,axiom,
    ( ( comp_P5356232565778667509nt_int @ product_fst_int_int
      @ ( comp_i5941103828406351439nt_int
        @ ^ [X4: int] : ( product_Pair_int_int @ X4 @ X4 )
        @ product_snd_int_int ) )
    = product_snd_int_int ) ).

% fst_diag_snd
thf(fact_6081_fst__diag__snd,axiom,
    ( ( comp_P1567445206330693457at_nat @ product_fst_nat_nat
      @ ( comp_n829915685812334579at_nat
        @ ^ [X4: nat] : ( product_Pair_nat_nat @ X4 @ X4 )
        @ product_snd_nat_nat ) )
    = product_snd_nat_nat ) ).

% fst_diag_snd
thf(fact_6082_snd__diag__fst,axiom,
    ( ( comp_P5356232565778667509nt_int @ product_snd_int_int
      @ ( comp_i5941103828406351439nt_int
        @ ^ [X4: int] : ( product_Pair_int_int @ X4 @ X4 )
        @ product_fst_int_int ) )
    = product_fst_int_int ) ).

% snd_diag_fst
thf(fact_6083_snd__diag__fst,axiom,
    ( ( comp_P1567445206330693457at_nat @ product_snd_nat_nat
      @ ( comp_n829915685812334579at_nat
        @ ^ [X4: nat] : ( product_Pair_nat_nat @ X4 @ X4 )
        @ product_fst_nat_nat ) )
    = product_fst_nat_nat ) ).

% snd_diag_fst
thf(fact_6084_fact__eq__fact__times,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri1408675320244567234ct_nat @ M )
        = ( times_times_nat @ ( semiri1408675320244567234ct_nat @ N )
          @ ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ ( suc @ N ) @ M ) ) ) ) ) ).

% fact_eq_fact_times
thf(fact_6085_pochhammer__Suc__prod,axiom,
    ! [A: rat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ A @ ( suc @ N ) )
      = ( groups73079841787564623at_rat
        @ ^ [I2: nat] : ( plus_plus_rat @ A @ ( semiri681578069525770553at_rat @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ).

% pochhammer_Suc_prod
thf(fact_6086_pochhammer__Suc__prod,axiom,
    ! [A: nat,N: nat] :
      ( ( comm_s4663373288045622133er_nat @ A @ ( suc @ N ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( plus_plus_nat @ A @ ( semiri1316708129612266289at_nat @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ).

% pochhammer_Suc_prod
thf(fact_6087_pochhammer__Suc__prod,axiom,
    ! [A: int,N: nat] :
      ( ( comm_s4660882817536571857er_int @ A @ ( suc @ N ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( plus_plus_int @ A @ ( semiri1314217659103216013at_int @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ).

% pochhammer_Suc_prod
thf(fact_6088_pochhammer__prod__rev,axiom,
    ( comm_s4028243227959126397er_rat
    = ( ^ [A4: rat,N5: nat] :
          ( groups73079841787564623at_rat
          @ ^ [I2: nat] : ( plus_plus_rat @ A4 @ ( semiri681578069525770553at_rat @ ( minus_minus_nat @ N5 @ I2 ) ) )
          @ ( set_or1269000886237332187st_nat @ one_one_nat @ N5 ) ) ) ) ).

% pochhammer_prod_rev
thf(fact_6089_pochhammer__prod__rev,axiom,
    ( comm_s4663373288045622133er_nat
    = ( ^ [A4: nat,N5: nat] :
          ( groups708209901874060359at_nat
          @ ^ [I2: nat] : ( plus_plus_nat @ A4 @ ( semiri1316708129612266289at_nat @ ( minus_minus_nat @ N5 @ I2 ) ) )
          @ ( set_or1269000886237332187st_nat @ one_one_nat @ N5 ) ) ) ) ).

% pochhammer_prod_rev
thf(fact_6090_pochhammer__prod__rev,axiom,
    ( comm_s4660882817536571857er_int
    = ( ^ [A4: int,N5: nat] :
          ( groups705719431365010083at_int
          @ ^ [I2: nat] : ( plus_plus_int @ A4 @ ( semiri1314217659103216013at_int @ ( minus_minus_nat @ N5 @ I2 ) ) )
          @ ( set_or1269000886237332187st_nat @ one_one_nat @ N5 ) ) ) ) ).

% pochhammer_prod_rev
thf(fact_6091_fact__div__fact,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( divide_divide_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) )
        = ( groups708209901874060359at_nat
          @ ^ [X4: nat] : X4
          @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ M ) ) ) ) ).

% fact_div_fact
thf(fact_6092_prod_Oin__pairs,axiom,
    ! [G: nat > code_integer,M: nat,N: nat] :
      ( ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups3455450783089532116nteger
        @ ^ [I2: nat] : ( times_3573771949741848930nteger @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.in_pairs
thf(fact_6093_prod_Oin__pairs,axiom,
    ! [G: nat > rat,M: nat,N: nat] :
      ( ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups73079841787564623at_rat
        @ ^ [I2: nat] : ( times_times_rat @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.in_pairs
thf(fact_6094_prod_Oin__pairs,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( times_times_nat @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.in_pairs
thf(fact_6095_prod_Oin__pairs,axiom,
    ! [G: nat > int,M: nat,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( times_times_int @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.in_pairs
thf(fact_6096_prod_Oin__pairs__0,axiom,
    ! [G: nat > code_integer,N: nat] :
      ( ( groups3455450783089532116nteger @ G @ ( set_ord_atMost_nat @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups3455450783089532116nteger
        @ ^ [I2: nat] : ( times_3573771949741848930nteger @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% prod.in_pairs_0
thf(fact_6097_prod_Oin__pairs__0,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups73079841787564623at_rat @ G @ ( set_ord_atMost_nat @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups73079841787564623at_rat
        @ ^ [I2: nat] : ( times_times_rat @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% prod.in_pairs_0
thf(fact_6098_prod_Oin__pairs__0,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_ord_atMost_nat @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( times_times_nat @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% prod.in_pairs_0
thf(fact_6099_prod_Oin__pairs__0,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_ord_atMost_nat @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( times_times_int @ ( G @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) @ ( G @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ I2 ) ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% prod.in_pairs_0
thf(fact_6100_pochhammer__Suc__prod__rev,axiom,
    ! [A: rat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ A @ ( suc @ N ) )
      = ( groups73079841787564623at_rat
        @ ^ [I2: nat] : ( plus_plus_rat @ A @ ( semiri681578069525770553at_rat @ ( minus_minus_nat @ N @ I2 ) ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ).

% pochhammer_Suc_prod_rev
thf(fact_6101_pochhammer__Suc__prod__rev,axiom,
    ! [A: nat,N: nat] :
      ( ( comm_s4663373288045622133er_nat @ A @ ( suc @ N ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( plus_plus_nat @ A @ ( semiri1316708129612266289at_nat @ ( minus_minus_nat @ N @ I2 ) ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ).

% pochhammer_Suc_prod_rev
thf(fact_6102_pochhammer__Suc__prod__rev,axiom,
    ! [A: int,N: nat] :
      ( ( comm_s4660882817536571857er_int @ A @ ( suc @ N ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( plus_plus_int @ A @ ( semiri1314217659103216013at_int @ ( minus_minus_nat @ N @ I2 ) ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ).

% pochhammer_Suc_prod_rev
thf(fact_6103_prod_Ozero__middle,axiom,
    ! [P4: nat,K: nat,G: nat > code_integer,H: nat > code_integer] :
      ( ( ord_less_eq_nat @ one_one_nat @ P4 )
     => ( ( ord_less_eq_nat @ K @ P4 )
       => ( ( groups3455450783089532116nteger
            @ ^ [J3: nat] : ( if_Code_integer @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( if_Code_integer @ ( J3 = K ) @ one_one_Code_integer @ ( H @ ( minus_minus_nat @ J3 @ ( suc @ zero_zero_nat ) ) ) ) )
            @ ( set_ord_atMost_nat @ P4 ) )
          = ( groups3455450783089532116nteger
            @ ^ [J3: nat] : ( if_Code_integer @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( H @ J3 ) )
            @ ( set_ord_atMost_nat @ ( minus_minus_nat @ P4 @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ).

% prod.zero_middle
thf(fact_6104_prod_Ozero__middle,axiom,
    ! [P4: nat,K: nat,G: nat > rat,H: nat > rat] :
      ( ( ord_less_eq_nat @ one_one_nat @ P4 )
     => ( ( ord_less_eq_nat @ K @ P4 )
       => ( ( groups73079841787564623at_rat
            @ ^ [J3: nat] : ( if_rat @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( if_rat @ ( J3 = K ) @ one_one_rat @ ( H @ ( minus_minus_nat @ J3 @ ( suc @ zero_zero_nat ) ) ) ) )
            @ ( set_ord_atMost_nat @ P4 ) )
          = ( groups73079841787564623at_rat
            @ ^ [J3: nat] : ( if_rat @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( H @ J3 ) )
            @ ( set_ord_atMost_nat @ ( minus_minus_nat @ P4 @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ).

% prod.zero_middle
thf(fact_6105_prod_Ozero__middle,axiom,
    ! [P4: nat,K: nat,G: nat > code_natural,H: nat > code_natural] :
      ( ( ord_less_eq_nat @ one_one_nat @ P4 )
     => ( ( ord_less_eq_nat @ K @ P4 )
       => ( ( groups2279045934846249631atural
            @ ^ [J3: nat] : ( if_Code_natural @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( if_Code_natural @ ( J3 = K ) @ one_one_Code_natural @ ( H @ ( minus_minus_nat @ J3 @ ( suc @ zero_zero_nat ) ) ) ) )
            @ ( set_ord_atMost_nat @ P4 ) )
          = ( groups2279045934846249631atural
            @ ^ [J3: nat] : ( if_Code_natural @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( H @ J3 ) )
            @ ( set_ord_atMost_nat @ ( minus_minus_nat @ P4 @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ).

% prod.zero_middle
thf(fact_6106_prod_Ozero__middle,axiom,
    ! [P4: nat,K: nat,G: nat > nat,H: nat > nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ P4 )
     => ( ( ord_less_eq_nat @ K @ P4 )
       => ( ( groups708209901874060359at_nat
            @ ^ [J3: nat] : ( if_nat @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( if_nat @ ( J3 = K ) @ one_one_nat @ ( H @ ( minus_minus_nat @ J3 @ ( suc @ zero_zero_nat ) ) ) ) )
            @ ( set_ord_atMost_nat @ P4 ) )
          = ( groups708209901874060359at_nat
            @ ^ [J3: nat] : ( if_nat @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( H @ J3 ) )
            @ ( set_ord_atMost_nat @ ( minus_minus_nat @ P4 @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ).

% prod.zero_middle
thf(fact_6107_prod_Ozero__middle,axiom,
    ! [P4: nat,K: nat,G: nat > int,H: nat > int] :
      ( ( ord_less_eq_nat @ one_one_nat @ P4 )
     => ( ( ord_less_eq_nat @ K @ P4 )
       => ( ( groups705719431365010083at_int
            @ ^ [J3: nat] : ( if_int @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( if_int @ ( J3 = K ) @ one_one_int @ ( H @ ( minus_minus_nat @ J3 @ ( suc @ zero_zero_nat ) ) ) ) )
            @ ( set_ord_atMost_nat @ P4 ) )
          = ( groups705719431365010083at_int
            @ ^ [J3: nat] : ( if_int @ ( ord_less_nat @ J3 @ K ) @ ( G @ J3 ) @ ( H @ J3 ) )
            @ ( set_ord_atMost_nat @ ( minus_minus_nat @ P4 @ ( suc @ zero_zero_nat ) ) ) ) ) ) ) ).

% prod.zero_middle
thf(fact_6108_gbinomial__Suc,axiom,
    ! [A: code_integer,K: nat] :
      ( ( gbinom8545251970709558553nteger @ A @ ( suc @ K ) )
      = ( divide6298287555418463151nteger
        @ ( groups3455450783089532116nteger
          @ ^ [I2: nat] : ( minus_8373710615458151222nteger @ A @ ( semiri4939895301339042750nteger @ I2 ) )
          @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ K ) )
        @ ( semiri3624122377584611663nteger @ ( suc @ K ) ) ) ) ).

% gbinomial_Suc
thf(fact_6109_gbinomial__Suc,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ A @ ( suc @ K ) )
      = ( divide_divide_rat
        @ ( groups73079841787564623at_rat
          @ ^ [I2: nat] : ( minus_minus_rat @ A @ ( semiri681578069525770553at_rat @ I2 ) )
          @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ K ) )
        @ ( semiri773545260158071498ct_rat @ ( suc @ K ) ) ) ) ).

% gbinomial_Suc
thf(fact_6110_gbinomial__Suc,axiom,
    ! [A: code_natural,K: nat] :
      ( ( gbinom7368847122466276068atural @ A @ ( suc @ K ) )
      = ( divide5121882707175180666atural
        @ ( groups2279045934846249631atural
          @ ^ [I2: nat] : ( minus_7197305767214868737atural @ A @ ( semiri3763490453095760265atural @ I2 ) )
          @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ K ) )
        @ ( semiri2447717529341329178atural @ ( suc @ K ) ) ) ) ).

% gbinomial_Suc
thf(fact_6111_gbinomial__Suc,axiom,
    ! [A: nat,K: nat] :
      ( ( gbinomial_nat @ A @ ( suc @ K ) )
      = ( divide_divide_nat
        @ ( groups708209901874060359at_nat
          @ ^ [I2: nat] : ( minus_minus_nat @ A @ ( semiri1316708129612266289at_nat @ I2 ) )
          @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ K ) )
        @ ( semiri1408675320244567234ct_nat @ ( suc @ K ) ) ) ) ).

% gbinomial_Suc
thf(fact_6112_gbinomial__Suc,axiom,
    ! [A: int,K: nat] :
      ( ( gbinomial_int @ A @ ( suc @ K ) )
      = ( divide_divide_int
        @ ( groups705719431365010083at_int
          @ ^ [I2: nat] : ( minus_minus_int @ A @ ( semiri1314217659103216013at_int @ I2 ) )
          @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ K ) )
        @ ( semiri1406184849735516958ct_int @ ( suc @ K ) ) ) ) ).

% gbinomial_Suc
thf(fact_6113_size__prod__simp,axiom,
    ( basic_1872990034501187214nt_int
    = ( ^ [F2: int > nat,G2: int > nat,P5: product_prod_int_int] : ( plus_plus_nat @ ( plus_plus_nat @ ( F2 @ ( product_fst_int_int @ P5 ) ) @ ( G2 @ ( product_snd_int_int @ P5 ) ) ) @ ( suc @ zero_zero_nat ) ) ) ) ).

% size_prod_simp
thf(fact_6114_size__prod__simp,axiom,
    ( basic_876126793109182934at_nat
    = ( ^ [F2: nat > nat,G2: nat > nat,P5: product_prod_nat_nat] : ( plus_plus_nat @ ( plus_plus_nat @ ( F2 @ ( product_fst_nat_nat @ P5 ) ) @ ( G2 @ ( product_snd_nat_nat @ P5 ) ) ) @ ( suc @ zero_zero_nat ) ) ) ) ).

% size_prod_simp
thf(fact_6115_bezw_Opelims,axiom,
    ! [X: nat,Xa: nat,Y3: product_prod_int_int] :
      ( ( ( bezw @ X @ Xa )
        = Y3 )
     => ( ( accp_P4275260045618599050at_nat @ bezw_rel @ ( product_Pair_nat_nat @ X @ Xa ) )
       => ~ ( ( ( ( Xa = zero_zero_nat )
               => ( Y3
                  = ( product_Pair_int_int @ one_one_int @ zero_zero_int ) ) )
              & ( ( Xa != zero_zero_nat )
               => ( Y3
                  = ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X @ Xa ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X @ Xa ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X @ Xa ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X @ Xa ) ) ) ) ) ) ) )
           => ~ ( accp_P4275260045618599050at_nat @ bezw_rel @ ( product_Pair_nat_nat @ X @ Xa ) ) ) ) ) ).

% bezw.pelims
thf(fact_6116_normalize__def,axiom,
    ( normalize
    = ( ^ [P5: product_prod_int_int] :
          ( if_Pro3027730157355071871nt_int @ ( ord_less_int @ zero_zero_int @ ( product_snd_int_int @ P5 ) ) @ ( product_Pair_int_int @ ( divide_divide_int @ ( product_fst_int_int @ P5 ) @ ( gcd_gcd_int @ ( product_fst_int_int @ P5 ) @ ( product_snd_int_int @ P5 ) ) ) @ ( divide_divide_int @ ( product_snd_int_int @ P5 ) @ ( gcd_gcd_int @ ( product_fst_int_int @ P5 ) @ ( product_snd_int_int @ P5 ) ) ) )
          @ ( if_Pro3027730157355071871nt_int
            @ ( ( product_snd_int_int @ P5 )
              = zero_zero_int )
            @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
            @ ( product_Pair_int_int @ ( divide_divide_int @ ( product_fst_int_int @ P5 ) @ ( uminus_uminus_int @ ( gcd_gcd_int @ ( product_fst_int_int @ P5 ) @ ( product_snd_int_int @ P5 ) ) ) ) @ ( divide_divide_int @ ( product_snd_int_int @ P5 ) @ ( uminus_uminus_int @ ( gcd_gcd_int @ ( product_fst_int_int @ P5 ) @ ( product_snd_int_int @ P5 ) ) ) ) ) ) ) ) ) ).

% normalize_def
thf(fact_6117_sum_Otriangle__reindex,axiom,
    ! [G: nat > nat > nat,N: nat] :
      ( ( groups977919841031483927at_nat @ ( produc6842872674320459806at_nat @ G )
        @ ( collec3392354462482085612at_nat
          @ ( produc6081775807080527818_nat_o
            @ ^ [I2: nat,J3: nat] : ( ord_less_nat @ ( plus_plus_nat @ I2 @ J3 ) @ N ) ) ) )
      = ( groups3542108847815614940at_nat
        @ ^ [K3: nat] :
            ( groups3542108847815614940at_nat
            @ ^ [I2: nat] : ( G @ I2 @ ( minus_minus_nat @ K3 @ I2 ) )
            @ ( set_ord_atMost_nat @ K3 ) )
        @ ( set_ord_lessThan_nat @ N ) ) ) ).

% sum.triangle_reindex
thf(fact_6118_Sum__Icc__int,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_eq_int @ M @ N )
     => ( ( groups4538972089207619220nt_int
          @ ^ [X4: int] : X4
          @ ( set_or1266510415728281911st_int @ M @ N ) )
        = ( divide_divide_int @ ( minus_minus_int @ ( times_times_int @ N @ ( plus_plus_int @ N @ one_one_int ) ) @ ( times_times_int @ M @ ( minus_minus_int @ M @ one_one_int ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ).

% Sum_Icc_int
thf(fact_6119_Sum__Ico__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : X4
        @ ( set_or4665077453230672383an_nat @ M @ N ) )
      = ( divide_divide_nat @ ( minus_minus_nat @ ( times_times_nat @ N @ ( minus_minus_nat @ N @ one_one_nat ) ) @ ( times_times_nat @ M @ ( minus_minus_nat @ M @ one_one_nat ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% Sum_Ico_nat
thf(fact_6120_gcd__right__idem,axiom,
    ! [A: int,B: int] :
      ( ( gcd_gcd_int @ ( gcd_gcd_int @ A @ B ) @ B )
      = ( gcd_gcd_int @ A @ B ) ) ).

% gcd_right_idem
thf(fact_6121_gcd__right__idem,axiom,
    ! [A: nat,B: nat] :
      ( ( gcd_gcd_nat @ ( gcd_gcd_nat @ A @ B ) @ B )
      = ( gcd_gcd_nat @ A @ B ) ) ).

% gcd_right_idem
thf(fact_6122_gcd__left__idem,axiom,
    ! [A: int,B: int] :
      ( ( gcd_gcd_int @ A @ ( gcd_gcd_int @ A @ B ) )
      = ( gcd_gcd_int @ A @ B ) ) ).

% gcd_left_idem
thf(fact_6123_gcd__left__idem,axiom,
    ! [A: nat,B: nat] :
      ( ( gcd_gcd_nat @ A @ ( gcd_gcd_nat @ A @ B ) )
      = ( gcd_gcd_nat @ A @ B ) ) ).

% gcd_left_idem
thf(fact_6124_gcd__eq__0__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( gcd_gcd_nat @ A @ B )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% gcd_eq_0_iff
thf(fact_6125_gcd__eq__0__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( gcd_gcd_int @ A @ B )
        = zero_zero_int )
      = ( ( A = zero_zero_int )
        & ( B = zero_zero_int ) ) ) ).

% gcd_eq_0_iff
thf(fact_6126_gcd__add1,axiom,
    ! [M: nat,N: nat] :
      ( ( gcd_gcd_nat @ ( plus_plus_nat @ M @ N ) @ N )
      = ( gcd_gcd_nat @ M @ N ) ) ).

% gcd_add1
thf(fact_6127_gcd__add1,axiom,
    ! [M: int,N: int] :
      ( ( gcd_gcd_int @ ( plus_plus_int @ M @ N ) @ N )
      = ( gcd_gcd_int @ M @ N ) ) ).

% gcd_add1
thf(fact_6128_gcd__add2,axiom,
    ! [M: nat,N: nat] :
      ( ( gcd_gcd_nat @ M @ ( plus_plus_nat @ M @ N ) )
      = ( gcd_gcd_nat @ M @ N ) ) ).

% gcd_add2
thf(fact_6129_gcd__add2,axiom,
    ! [M: int,N: int] :
      ( ( gcd_gcd_int @ M @ ( plus_plus_int @ M @ N ) )
      = ( gcd_gcd_int @ M @ N ) ) ).

% gcd_add2
thf(fact_6130_gcd_Obottom__left__bottom,axiom,
    ! [A: nat] :
      ( ( gcd_gcd_nat @ one_one_nat @ A )
      = one_one_nat ) ).

% gcd.bottom_left_bottom
thf(fact_6131_gcd_Obottom__left__bottom,axiom,
    ! [A: int] :
      ( ( gcd_gcd_int @ one_one_int @ A )
      = one_one_int ) ).

% gcd.bottom_left_bottom
thf(fact_6132_gcd_Obottom__right__bottom,axiom,
    ! [A: nat] :
      ( ( gcd_gcd_nat @ A @ one_one_nat )
      = one_one_nat ) ).

% gcd.bottom_right_bottom
thf(fact_6133_gcd_Obottom__right__bottom,axiom,
    ! [A: int] :
      ( ( gcd_gcd_int @ A @ one_one_int )
      = one_one_int ) ).

% gcd.bottom_right_bottom
thf(fact_6134_gcd__neg2,axiom,
    ! [A: int,B: int] :
      ( ( gcd_gcd_int @ A @ ( uminus_uminus_int @ B ) )
      = ( gcd_gcd_int @ A @ B ) ) ).

% gcd_neg2
thf(fact_6135_gcd__neg1,axiom,
    ! [A: int,B: int] :
      ( ( gcd_gcd_int @ ( uminus_uminus_int @ A ) @ B )
      = ( gcd_gcd_int @ A @ B ) ) ).

% gcd_neg1
thf(fact_6136_gcd__greatest__iff,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ ( gcd_gcd_int @ B @ C ) )
      = ( ( dvd_dvd_int @ A @ B )
        & ( dvd_dvd_int @ A @ C ) ) ) ).

% gcd_greatest_iff
thf(fact_6137_gcd__greatest__iff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) )
      = ( ( dvd_dvd_nat @ A @ B )
        & ( dvd_dvd_nat @ A @ C ) ) ) ).

% gcd_greatest_iff
thf(fact_6138_gcd__dvd2,axiom,
    ! [A: int,B: int] : ( dvd_dvd_int @ ( gcd_gcd_int @ A @ B ) @ B ) ).

% gcd_dvd2
thf(fact_6139_gcd__dvd2,axiom,
    ! [A: nat,B: nat] : ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ B ) ).

% gcd_dvd2
thf(fact_6140_gcd__dvd1,axiom,
    ! [A: int,B: int] : ( dvd_dvd_int @ ( gcd_gcd_int @ A @ B ) @ A ) ).

% gcd_dvd1
thf(fact_6141_gcd__dvd1,axiom,
    ! [A: nat,B: nat] : ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ A ) ).

% gcd_dvd1
thf(fact_6142_gcd__exp,axiom,
    ! [A: nat,N: nat,B: nat] :
      ( ( gcd_gcd_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) )
      = ( power_power_nat @ ( gcd_gcd_nat @ A @ B ) @ N ) ) ).

% gcd_exp
thf(fact_6143_gcd__exp,axiom,
    ! [A: int,N: nat,B: int] :
      ( ( gcd_gcd_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) )
      = ( power_power_int @ ( gcd_gcd_int @ A @ B ) @ N ) ) ).

% gcd_exp
thf(fact_6144_gcd__1__int,axiom,
    ! [M: int] :
      ( ( gcd_gcd_int @ M @ one_one_int )
      = one_one_int ) ).

% gcd_1_int
thf(fact_6145_gcd__neg2__int,axiom,
    ! [X: int,Y3: int] :
      ( ( gcd_gcd_int @ X @ ( uminus_uminus_int @ Y3 ) )
      = ( gcd_gcd_int @ X @ Y3 ) ) ).

% gcd_neg2_int
thf(fact_6146_gcd__neg1__int,axiom,
    ! [X: int,Y3: int] :
      ( ( gcd_gcd_int @ ( uminus_uminus_int @ X ) @ Y3 )
      = ( gcd_gcd_int @ X @ Y3 ) ) ).

% gcd_neg1_int
thf(fact_6147_abs__gcd__int,axiom,
    ! [X: int,Y3: int] :
      ( ( abs_abs_int @ ( gcd_gcd_int @ X @ Y3 ) )
      = ( gcd_gcd_int @ X @ Y3 ) ) ).

% abs_gcd_int
thf(fact_6148_gcd__abs1__int,axiom,
    ! [X: int,Y3: int] :
      ( ( gcd_gcd_int @ ( abs_abs_int @ X ) @ Y3 )
      = ( gcd_gcd_int @ X @ Y3 ) ) ).

% gcd_abs1_int
thf(fact_6149_gcd__abs2__int,axiom,
    ! [X: int,Y3: int] :
      ( ( gcd_gcd_int @ X @ ( abs_abs_int @ Y3 ) )
      = ( gcd_gcd_int @ X @ Y3 ) ) ).

% gcd_abs2_int
thf(fact_6150_gcd__neg__numeral__1,axiom,
    ! [N: num,A: int] :
      ( ( gcd_gcd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) @ A )
      = ( gcd_gcd_int @ ( numeral_numeral_int @ N ) @ A ) ) ).

% gcd_neg_numeral_1
thf(fact_6151_gcd__neg__numeral__2,axiom,
    ! [A: int,N: num] :
      ( ( gcd_gcd_int @ A @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( gcd_gcd_int @ A @ ( numeral_numeral_int @ N ) ) ) ).

% gcd_neg_numeral_2
thf(fact_6152_is__unit__gcd__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ one_one_nat )
      = ( ( gcd_gcd_nat @ A @ B )
        = one_one_nat ) ) ).

% is_unit_gcd_iff
thf(fact_6153_is__unit__gcd__iff,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ ( gcd_gcd_int @ A @ B ) @ one_one_int )
      = ( ( gcd_gcd_int @ A @ B )
        = one_one_int ) ) ).

% is_unit_gcd_iff
thf(fact_6154_gcd__pos__int,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ zero_zero_int @ ( gcd_gcd_int @ M @ N ) )
      = ( ( M != zero_zero_int )
        | ( N != zero_zero_int ) ) ) ).

% gcd_pos_int
thf(fact_6155_gcd__neg__numeral__1__int,axiom,
    ! [N: num,X: int] :
      ( ( gcd_gcd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) @ X )
      = ( gcd_gcd_int @ ( numeral_numeral_int @ N ) @ X ) ) ).

% gcd_neg_numeral_1_int
thf(fact_6156_gcd__neg__numeral__2__int,axiom,
    ! [X: int,N: num] :
      ( ( gcd_gcd_int @ X @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( gcd_gcd_int @ X @ ( numeral_numeral_int @ N ) ) ) ).

% gcd_neg_numeral_2_int
thf(fact_6157_gcd__0__int,axiom,
    ! [X: int] :
      ( ( gcd_gcd_int @ X @ zero_zero_int )
      = ( abs_abs_int @ X ) ) ).

% gcd_0_int
thf(fact_6158_gcd__0__left__int,axiom,
    ! [X: int] :
      ( ( gcd_gcd_int @ zero_zero_int @ X )
      = ( abs_abs_int @ X ) ) ).

% gcd_0_left_int
thf(fact_6159_gcd__proj2__if__dvd__int,axiom,
    ! [Y3: int,X: int] :
      ( ( dvd_dvd_int @ Y3 @ X )
     => ( ( gcd_gcd_int @ X @ Y3 )
        = ( abs_abs_int @ Y3 ) ) ) ).

% gcd_proj2_if_dvd_int
thf(fact_6160_gcd__proj1__if__dvd__int,axiom,
    ! [X: int,Y3: int] :
      ( ( dvd_dvd_int @ X @ Y3 )
     => ( ( gcd_gcd_int @ X @ Y3 )
        = ( abs_abs_int @ X ) ) ) ).

% gcd_proj1_if_dvd_int
thf(fact_6161_sum_OlessThan__Suc,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_ord_lessThan_nat @ N ) ) @ ( G @ N ) ) ) ).

% sum.lessThan_Suc
thf(fact_6162_sum_OlessThan__Suc,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_ord_lessThan_nat @ N ) ) @ ( G @ N ) ) ) ).

% sum.lessThan_Suc
thf(fact_6163_sum_OlessThan__Suc,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_ord_lessThan_nat @ N ) ) @ ( G @ N ) ) ) ).

% sum.lessThan_Suc
thf(fact_6164_sum_Oop__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > int] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = zero_zero_int ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% sum.op_ivl_Suc
thf(fact_6165_sum_Oop__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > code_integer] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups7501900531339628137nteger @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = zero_z3403309356797280102nteger ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups7501900531339628137nteger @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = ( plus_p5714425477246183910nteger @ ( groups7501900531339628137nteger @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% sum.op_ivl_Suc
thf(fact_6166_sum_Oop__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > rat] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = zero_zero_rat ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% sum.op_ivl_Suc
thf(fact_6167_sum_Oop__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > code_natural] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups6325495683096345652atural @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = zero_z2226904508553997617atural ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups6325495683096345652atural @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = ( plus_p4538020629002901425atural @ ( groups6325495683096345652atural @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% sum.op_ivl_Suc
thf(fact_6168_sum_Oop__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > nat] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = zero_zero_nat ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% sum.op_ivl_Suc
thf(fact_6169_prod_Oop__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > code_natural] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups2279045934846249631atural @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = one_one_Code_natural ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups2279045934846249631atural @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = ( times_2397367101498566445atural @ ( groups2279045934846249631atural @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% prod.op_ivl_Suc
thf(fact_6170_prod_Oop__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > code_integer] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups3455450783089532116nteger @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = one_one_Code_integer ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups3455450783089532116nteger @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = ( times_3573771949741848930nteger @ ( groups3455450783089532116nteger @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% prod.op_ivl_Suc
thf(fact_6171_prod_Oop__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > rat] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups73079841787564623at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = one_one_rat ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups73079841787564623at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = ( times_times_rat @ ( groups73079841787564623at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% prod.op_ivl_Suc
thf(fact_6172_prod_Oop__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > nat] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = one_one_nat ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = ( times_times_nat @ ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% prod.op_ivl_Suc
thf(fact_6173_prod_Oop__ivl__Suc,axiom,
    ! [N: nat,M: nat,G: nat > int] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = one_one_int ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) ) )
          = ( times_times_int @ ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% prod.op_ivl_Suc
thf(fact_6174_Suc__0__mod__numeral,axiom,
    ! [K: num] :
      ( ( modulo_modulo_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ K ) )
      = ( product_snd_nat_nat @ ( unique5055182867167087721od_nat @ one @ K ) ) ) ).

% Suc_0_mod_numeral
thf(fact_6175_int__prod,axiom,
    ! [F: int > nat,A3: set_int] :
      ( ( semiri1314217659103216013at_int @ ( groups1707563613775114915nt_nat @ F @ A3 ) )
      = ( groups1705073143266064639nt_int
        @ ^ [X4: int] : ( semiri1314217659103216013at_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% int_prod
thf(fact_6176_int__prod,axiom,
    ! [F: nat > nat,A3: set_nat] :
      ( ( semiri1314217659103216013at_int @ ( groups708209901874060359at_nat @ F @ A3 ) )
      = ( groups705719431365010083at_int
        @ ^ [X4: nat] : ( semiri1314217659103216013at_int @ ( F @ X4 ) )
        @ A3 ) ) ).

% int_prod
thf(fact_6177_lessThan__atLeast0,axiom,
    ( set_ord_lessThan_nat
    = ( set_or4665077453230672383an_nat @ zero_zero_nat ) ) ).

% lessThan_atLeast0
thf(fact_6178_gcd_Oleft__commute,axiom,
    ! [B: int,A: int,C: int] :
      ( ( gcd_gcd_int @ B @ ( gcd_gcd_int @ A @ C ) )
      = ( gcd_gcd_int @ A @ ( gcd_gcd_int @ B @ C ) ) ) ).

% gcd.left_commute
thf(fact_6179_gcd_Oleft__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( gcd_gcd_nat @ B @ ( gcd_gcd_nat @ A @ C ) )
      = ( gcd_gcd_nat @ A @ ( gcd_gcd_nat @ B @ C ) ) ) ).

% gcd.left_commute
thf(fact_6180_gcd_Ocommute,axiom,
    ( gcd_gcd_int
    = ( ^ [A4: int,B4: int] : ( gcd_gcd_int @ B4 @ A4 ) ) ) ).

% gcd.commute
thf(fact_6181_gcd_Ocommute,axiom,
    ( gcd_gcd_nat
    = ( ^ [A4: nat,B4: nat] : ( gcd_gcd_nat @ B4 @ A4 ) ) ) ).

% gcd.commute
thf(fact_6182_gcd_Oassoc,axiom,
    ! [A: int,B: int,C: int] :
      ( ( gcd_gcd_int @ ( gcd_gcd_int @ A @ B ) @ C )
      = ( gcd_gcd_int @ A @ ( gcd_gcd_int @ B @ C ) ) ) ).

% gcd.assoc
thf(fact_6183_gcd_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( gcd_gcd_nat @ ( gcd_gcd_nat @ A @ B ) @ C )
      = ( gcd_gcd_nat @ A @ ( gcd_gcd_nat @ B @ C ) ) ) ).

% gcd.assoc
thf(fact_6184_gcd__diff2,axiom,
    ! [N: int,M: int] :
      ( ( gcd_gcd_int @ ( minus_minus_int @ N @ M ) @ N )
      = ( gcd_gcd_int @ M @ N ) ) ).

% gcd_diff2
thf(fact_6185_gcd__diff1,axiom,
    ! [M: int,N: int] :
      ( ( gcd_gcd_int @ ( minus_minus_int @ M @ N ) @ N )
      = ( gcd_gcd_int @ M @ N ) ) ).

% gcd_diff1
thf(fact_6186_gcd__dvd__antisym,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( dvd_dvd_int @ ( gcd_gcd_int @ A @ B ) @ ( gcd_gcd_int @ C @ D ) )
     => ( ( dvd_dvd_int @ ( gcd_gcd_int @ C @ D ) @ ( gcd_gcd_int @ A @ B ) )
       => ( ( gcd_gcd_int @ A @ B )
          = ( gcd_gcd_int @ C @ D ) ) ) ) ).

% gcd_dvd_antisym
thf(fact_6187_gcd__dvd__antisym,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ ( gcd_gcd_nat @ C @ D ) )
     => ( ( dvd_dvd_nat @ ( gcd_gcd_nat @ C @ D ) @ ( gcd_gcd_nat @ A @ B ) )
       => ( ( gcd_gcd_nat @ A @ B )
          = ( gcd_gcd_nat @ C @ D ) ) ) ) ).

% gcd_dvd_antisym
thf(fact_6188_gcd__greatest,axiom,
    ! [C: int,A: int,B: int] :
      ( ( dvd_dvd_int @ C @ A )
     => ( ( dvd_dvd_int @ C @ B )
       => ( dvd_dvd_int @ C @ ( gcd_gcd_int @ A @ B ) ) ) ) ).

% gcd_greatest
thf(fact_6189_gcd__greatest,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( dvd_dvd_nat @ C @ A )
     => ( ( dvd_dvd_nat @ C @ B )
       => ( dvd_dvd_nat @ C @ ( gcd_gcd_nat @ A @ B ) ) ) ) ).

% gcd_greatest
thf(fact_6190_gcd__dvdI2,axiom,
    ! [B: int,C: int,A: int] :
      ( ( dvd_dvd_int @ B @ C )
     => ( dvd_dvd_int @ ( gcd_gcd_int @ A @ B ) @ C ) ) ).

% gcd_dvdI2
thf(fact_6191_gcd__dvdI2,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ C )
     => ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ C ) ) ).

% gcd_dvdI2
thf(fact_6192_gcd__dvdI1,axiom,
    ! [A: int,C: int,B: int] :
      ( ( dvd_dvd_int @ A @ C )
     => ( dvd_dvd_int @ ( gcd_gcd_int @ A @ B ) @ C ) ) ).

% gcd_dvdI1
thf(fact_6193_gcd__dvdI1,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ C )
     => ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ C ) ) ).

% gcd_dvdI1
thf(fact_6194_dvd__gcdD2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ ( gcd_gcd_int @ B @ C ) )
     => ( dvd_dvd_int @ A @ C ) ) ).

% dvd_gcdD2
thf(fact_6195_dvd__gcdD2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) )
     => ( dvd_dvd_nat @ A @ C ) ) ).

% dvd_gcdD2
thf(fact_6196_dvd__gcdD1,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ ( gcd_gcd_int @ B @ C ) )
     => ( dvd_dvd_int @ A @ B ) ) ).

% dvd_gcdD1
thf(fact_6197_dvd__gcdD1,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) )
     => ( dvd_dvd_nat @ A @ B ) ) ).

% dvd_gcdD1
thf(fact_6198_gcd__mono,axiom,
    ! [A: int,C: int,B: int,D: int] :
      ( ( dvd_dvd_int @ A @ C )
     => ( ( dvd_dvd_int @ B @ D )
       => ( dvd_dvd_int @ ( gcd_gcd_int @ A @ B ) @ ( gcd_gcd_int @ C @ D ) ) ) ) ).

% gcd_mono
thf(fact_6199_gcd__mono,axiom,
    ! [A: nat,C: nat,B: nat,D: nat] :
      ( ( dvd_dvd_nat @ A @ C )
     => ( ( dvd_dvd_nat @ B @ D )
       => ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ ( gcd_gcd_nat @ C @ D ) ) ) ) ).

% gcd_mono
thf(fact_6200_prod__int__eq,axiom,
    ! [I: nat,J: nat] :
      ( ( groups705719431365010083at_int @ semiri1314217659103216013at_int @ ( set_or1269000886237332187st_nat @ I @ J ) )
      = ( groups1705073143266064639nt_int
        @ ^ [X4: int] : X4
        @ ( set_or1266510415728281911st_int @ ( semiri1314217659103216013at_int @ I ) @ ( semiri1314217659103216013at_int @ J ) ) ) ) ).

% prod_int_eq
thf(fact_6201_gcd__idem__int,axiom,
    ! [X: int] :
      ( ( gcd_gcd_int @ X @ X )
      = ( abs_abs_int @ X ) ) ).

% gcd_idem_int
thf(fact_6202_gcd__red__int,axiom,
    ( gcd_gcd_int
    = ( ^ [X4: int,Y: int] : ( gcd_gcd_int @ Y @ ( modulo_modulo_int @ X4 @ Y ) ) ) ) ).

% gcd_red_int
thf(fact_6203_effect__heapE,axiom,
    ! [F: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat] :
      ( ( heap_Time_effect_a @ ( heap_Time_heap_a @ F ) @ H @ H2 @ R @ N )
     => ~ ( ( H2
            = ( produc2838810277069100634it_nat @ ( produc6461318759014699077it_nat @ ( F @ H ) ) ) )
         => ( ( N
              = ( produc2594868675584459928it_nat @ ( produc6461318759014699077it_nat @ ( F @ H ) ) ) )
           => ( R
             != ( produc4481111470393856007it_nat @ ( F @ H ) ) ) ) ) ) ).

% effect_heapE
thf(fact_6204_effect__heapI,axiom,
    ! [N: nat,F: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a] :
      ( ( N
        = ( produc2594868675584459928it_nat @ ( produc6461318759014699077it_nat @ ( F @ H ) ) ) )
     => ( ( H2
          = ( produc2838810277069100634it_nat @ ( produc6461318759014699077it_nat @ ( F @ H ) ) ) )
       => ( ( R
            = ( produc4481111470393856007it_nat @ ( F @ H ) ) )
         => ( heap_Time_effect_a @ ( heap_Time_heap_a @ F ) @ H @ H2 @ R @ N ) ) ) ) ).

% effect_heapI
thf(fact_6205_effect__guardE,axiom,
    ! [P: heap_e7401611519738050253t_unit > $o,F: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat] :
      ( ( heap_Time_effect_a @ ( heap_Time_guard_a @ P @ F ) @ H @ H2 @ R @ N )
     => ~ ( ( H2
            = ( produc2838810277069100634it_nat @ ( produc6461318759014699077it_nat @ ( F @ H ) ) ) )
         => ( ( N
              = ( produc2594868675584459928it_nat @ ( produc6461318759014699077it_nat @ ( F @ H ) ) ) )
           => ( ( R
                = ( produc4481111470393856007it_nat @ ( F @ H ) ) )
             => ~ ( P @ H ) ) ) ) ) ).

% effect_guardE
thf(fact_6206_effect__guardI,axiom,
    ! [P: heap_e7401611519738050253t_unit > $o,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,F: heap_e7401611519738050253t_unit > produc3260487557148687353it_nat,N: nat,R: a] :
      ( ( P @ H )
     => ( ( H2
          = ( produc2838810277069100634it_nat @ ( produc6461318759014699077it_nat @ ( F @ H ) ) ) )
       => ( ( N
            = ( produc2594868675584459928it_nat @ ( produc6461318759014699077it_nat @ ( F @ H ) ) ) )
         => ( ( R
              = ( produc4481111470393856007it_nat @ ( F @ H ) ) )
           => ( heap_Time_effect_a @ ( heap_Time_guard_a @ P @ F ) @ H @ H2 @ R @ N ) ) ) ) ) ).

% effect_guardI
thf(fact_6207_prod_OatLeast__int__atMost__int__shift,axiom,
    ! [G: int > nat,M: nat,N: nat] :
      ( ( groups1707563613775114915nt_nat @ G @ ( set_or1266510415728281911st_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) )
      = ( groups708209901874060359at_nat @ ( comp_int_nat_nat @ G @ semiri1314217659103216013at_int ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.atLeast_int_atMost_int_shift
thf(fact_6208_prod_OatLeast__int__atMost__int__shift,axiom,
    ! [G: int > int,M: nat,N: nat] :
      ( ( groups1705073143266064639nt_int @ G @ ( set_or1266510415728281911st_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) )
      = ( groups705719431365010083at_int @ ( comp_int_int_nat @ G @ semiri1314217659103216013at_int ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% prod.atLeast_int_atMost_int_shift
thf(fact_6209_prod__int__plus__eq,axiom,
    ! [I: nat,J: nat] :
      ( ( groups705719431365010083at_int @ semiri1314217659103216013at_int @ ( set_or1269000886237332187st_nat @ I @ ( plus_plus_nat @ I @ J ) ) )
      = ( groups1705073143266064639nt_int
        @ ^ [X4: int] : X4
        @ ( set_or1266510415728281911st_int @ ( semiri1314217659103216013at_int @ I ) @ ( semiri1314217659103216013at_int @ ( plus_plus_nat @ I @ J ) ) ) ) ) ).

% prod_int_plus_eq
thf(fact_6210_sum_Onat__group,axiom,
    ! [G: nat > nat,K: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [M5: nat] : ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ ( times_times_nat @ M5 @ K ) @ ( plus_plus_nat @ ( times_times_nat @ M5 @ K ) @ K ) ) )
        @ ( set_ord_lessThan_nat @ N ) )
      = ( groups3542108847815614940at_nat @ G @ ( set_ord_lessThan_nat @ ( times_times_nat @ N @ K ) ) ) ) ).

% sum.nat_group
thf(fact_6211_prod_Onat__group,axiom,
    ! [G: nat > nat,K: nat,N: nat] :
      ( ( groups708209901874060359at_nat
        @ ^ [M5: nat] : ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ ( times_times_nat @ M5 @ K ) @ ( plus_plus_nat @ ( times_times_nat @ M5 @ K ) @ K ) ) )
        @ ( set_ord_lessThan_nat @ N ) )
      = ( groups708209901874060359at_nat @ G @ ( set_ord_lessThan_nat @ ( times_times_nat @ N @ K ) ) ) ) ).

% prod.nat_group
thf(fact_6212_prod_Onat__group,axiom,
    ! [G: nat > int,K: nat,N: nat] :
      ( ( groups705719431365010083at_int
        @ ^ [M5: nat] : ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ ( times_times_nat @ M5 @ K ) @ ( plus_plus_nat @ ( times_times_nat @ M5 @ K ) @ K ) ) )
        @ ( set_ord_lessThan_nat @ N ) )
      = ( groups705719431365010083at_int @ G @ ( set_ord_lessThan_nat @ ( times_times_nat @ N @ K ) ) ) ) ).

% prod.nat_group
thf(fact_6213_effectE,axiom,
    ! [C: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,H2: heap_e7401611519738050253t_unit,R: a,N: nat] :
      ( ( heap_Time_effect_a @ C @ H @ H2 @ R @ N )
     => ~ ( ( R
            = ( produc4481111470393856007it_nat @ ( the_Pr3616839707675578981it_nat @ ( heap_Time_execute_a @ C @ H ) ) ) )
         => ( ( H2
              = ( produc2838810277069100634it_nat @ ( produc6461318759014699077it_nat @ ( the_Pr3616839707675578981it_nat @ ( heap_Time_execute_a @ C @ H ) ) ) ) )
           => ( ( N
                = ( produc2594868675584459928it_nat @ ( produc6461318759014699077it_nat @ ( the_Pr3616839707675578981it_nat @ ( heap_Time_execute_a @ C @ H ) ) ) ) )
             => ~ ( heap_Time_success_a @ C @ H ) ) ) ) ) ).

% effectE
thf(fact_6214_lessThan__def,axiom,
    ( set_or5243998310507771012at_nat
    = ( ^ [U2: set_Pr1261947904930325089at_nat] :
          ( collec5514110066124741708at_nat
          @ ^ [X4: set_Pr1261947904930325089at_nat] : ( ord_le7866589430770878221at_nat @ X4 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_6215_lessThan__def,axiom,
    ( set_or4940836740269066044nt_int
    = ( ^ [U2: set_Pr958786334691620121nt_int] :
          ( collec5210948495886036740nt_int
          @ ^ [X4: set_Pr958786334691620121nt_int] : ( ord_le7563427860532173253nt_int @ X4 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_6216_lessThan__def,axiom,
    ( set_or890127255671739683et_nat
    = ( ^ [U2: set_nat] :
          ( collect_set_nat
          @ ^ [X4: set_nat] : ( ord_less_set_nat @ X4 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_6217_lessThan__def,axiom,
    ( set_or2436086697161274615iteral
    = ( ^ [U2: literal] :
          ( collect_literal
          @ ^ [X4: literal] : ( ord_less_literal @ X4 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_6218_lessThan__def,axiom,
    ( set_ord_lessThan_rat
    = ( ^ [U2: rat] :
          ( collect_rat
          @ ^ [X4: rat] : ( ord_less_rat @ X4 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_6219_lessThan__def,axiom,
    ( set_ord_lessThan_num
    = ( ^ [U2: num] :
          ( collect_num
          @ ^ [X4: num] : ( ord_less_num @ X4 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_6220_lessThan__def,axiom,
    ( set_ord_lessThan_int
    = ( ^ [U2: int] :
          ( collect_int
          @ ^ [X4: int] : ( ord_less_int @ X4 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_6221_lessThan__def,axiom,
    ( set_ord_lessThan_nat
    = ( ^ [U2: nat] :
          ( collect_nat
          @ ^ [X4: nat] : ( ord_less_nat @ X4 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_6222_gcd__add__mult,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( gcd_gcd_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ K @ M ) @ N ) )
      = ( gcd_gcd_nat @ M @ N ) ) ).

% gcd_add_mult
thf(fact_6223_gcd__add__mult,axiom,
    ! [M: int,K: int,N: int] :
      ( ( gcd_gcd_int @ M @ ( plus_plus_int @ ( times_times_int @ K @ M ) @ N ) )
      = ( gcd_gcd_int @ M @ N ) ) ).

% gcd_add_mult
thf(fact_6224_gcd__dvd__prod,axiom,
    ! [A: nat,B: nat,K: nat] : ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ ( times_times_nat @ K @ B ) ) ).

% gcd_dvd_prod
thf(fact_6225_gcd__dvd__prod,axiom,
    ! [A: int,B: int,K: int] : ( dvd_dvd_int @ ( gcd_gcd_int @ A @ B ) @ ( times_times_int @ K @ B ) ) ).

% gcd_dvd_prod
thf(fact_6226_ex__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [M5: nat] :
            ( ( ord_less_nat @ M5 @ N )
            & ( P @ M5 ) ) )
      = ( ? [X4: nat] :
            ( ( member_nat @ X4 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
            & ( P @ X4 ) ) ) ) ).

% ex_nat_less_eq
thf(fact_6227_all__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [M5: nat] :
            ( ( ord_less_nat @ M5 @ N )
           => ( P @ M5 ) ) )
      = ( ! [X4: nat] :
            ( ( member_nat @ X4 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
           => ( P @ X4 ) ) ) ) ).

% all_nat_less_eq
thf(fact_6228_gcd__ge__0__int,axiom,
    ! [X: int,Y3: int] : ( ord_less_eq_int @ zero_zero_int @ ( gcd_gcd_int @ X @ Y3 ) ) ).

% gcd_ge_0_int
thf(fact_6229_bezout__int,axiom,
    ! [X: int,Y3: int] :
    ? [U3: int,V4: int] :
      ( ( plus_plus_int @ ( times_times_int @ U3 @ X ) @ ( times_times_int @ V4 @ Y3 ) )
      = ( gcd_gcd_int @ X @ Y3 ) ) ).

% bezout_int
thf(fact_6230_gcd__mult__distrib__int,axiom,
    ! [K: int,M: int,N: int] :
      ( ( times_times_int @ ( abs_abs_int @ K ) @ ( gcd_gcd_int @ M @ N ) )
      = ( gcd_gcd_int @ ( times_times_int @ K @ M ) @ ( times_times_int @ K @ N ) ) ) ).

% gcd_mult_distrib_int
thf(fact_6231_execute__bind__success,axiom,
    ! [F: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,G: a > heap_Time_Heap_a] :
      ( ( heap_Time_success_a @ F @ H )
     => ( ( heap_Time_execute_a @ ( heap_Time_bind_a_a @ F @ G ) @ H )
        = ( heap_T7616092557645711335rame_a @ ( produc2594868675584459928it_nat @ ( produc6461318759014699077it_nat @ ( the_Pr3616839707675578981it_nat @ ( heap_Time_execute_a @ F @ H ) ) ) ) @ ( heap_Time_execute_a @ ( G @ ( produc4481111470393856007it_nat @ ( the_Pr3616839707675578981it_nat @ ( heap_Time_execute_a @ F @ H ) ) ) ) @ ( produc2838810277069100634it_nat @ ( produc6461318759014699077it_nat @ ( the_Pr3616839707675578981it_nat @ ( heap_Time_execute_a @ F @ H ) ) ) ) ) ) ) ) ).

% execute_bind_success
thf(fact_6232_sum_Oshift__bounds__Suc__ivl,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
        @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% sum.shift_bounds_Suc_ivl
thf(fact_6233_sum_Oshift__bounds__nat__ivl,axiom,
    ! [G: nat > nat,M: nat,K: nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( G @ ( plus_plus_nat @ I2 @ K ) )
        @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% sum.shift_bounds_nat_ivl
thf(fact_6234_prod_Oshift__bounds__Suc__ivl,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
        @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% prod.shift_bounds_Suc_ivl
thf(fact_6235_prod_Oshift__bounds__Suc__ivl,axiom,
    ! [G: nat > int,M: nat,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
        @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% prod.shift_bounds_Suc_ivl
thf(fact_6236_prod_Oshift__bounds__nat__ivl,axiom,
    ! [G: nat > nat,M: nat,K: nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( G @ ( plus_plus_nat @ I2 @ K ) )
        @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% prod.shift_bounds_nat_ivl
thf(fact_6237_prod_Oshift__bounds__nat__ivl,axiom,
    ! [G: nat > int,M: nat,K: nat,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( G @ ( plus_plus_nat @ I2 @ K ) )
        @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% prod.shift_bounds_nat_ivl
thf(fact_6238_gcd__mult__unit2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( gcd_gcd_nat @ B @ ( times_times_nat @ C @ A ) )
        = ( gcd_gcd_nat @ B @ C ) ) ) ).

% gcd_mult_unit2
thf(fact_6239_gcd__mult__unit2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( gcd_gcd_int @ B @ ( times_times_int @ C @ A ) )
        = ( gcd_gcd_int @ B @ C ) ) ) ).

% gcd_mult_unit2
thf(fact_6240_gcd__mult__unit1,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( gcd_gcd_nat @ ( times_times_nat @ B @ A ) @ C )
        = ( gcd_gcd_nat @ B @ C ) ) ) ).

% gcd_mult_unit1
thf(fact_6241_gcd__mult__unit1,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( gcd_gcd_int @ ( times_times_int @ B @ A ) @ C )
        = ( gcd_gcd_int @ B @ C ) ) ) ).

% gcd_mult_unit1
thf(fact_6242_gcd__div__unit2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( gcd_gcd_int @ B @ ( divide_divide_int @ C @ A ) )
        = ( gcd_gcd_int @ B @ C ) ) ) ).

% gcd_div_unit2
thf(fact_6243_gcd__div__unit2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( gcd_gcd_nat @ B @ ( divide_divide_nat @ C @ A ) )
        = ( gcd_gcd_nat @ B @ C ) ) ) ).

% gcd_div_unit2
thf(fact_6244_gcd__div__unit1,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ one_one_int )
     => ( ( gcd_gcd_int @ ( divide_divide_int @ B @ A ) @ C )
        = ( gcd_gcd_int @ B @ C ) ) ) ).

% gcd_div_unit1
thf(fact_6245_gcd__div__unit1,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ one_one_nat )
     => ( ( gcd_gcd_nat @ ( divide_divide_nat @ B @ A ) @ C )
        = ( gcd_gcd_nat @ B @ C ) ) ) ).

% gcd_div_unit1
thf(fact_6246_gcd__le2__int,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ord_less_eq_int @ ( gcd_gcd_int @ A @ B ) @ B ) ) ).

% gcd_le2_int
thf(fact_6247_gcd__le1__int,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ord_less_eq_int @ ( gcd_gcd_int @ A @ B ) @ A ) ) ).

% gcd_le1_int
thf(fact_6248_gcd__cases__int,axiom,
    ! [X: int,Y3: int,P: int > $o] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ X )
       => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
         => ( P @ ( gcd_gcd_int @ X @ Y3 ) ) ) )
     => ( ( ( ord_less_eq_int @ zero_zero_int @ X )
         => ( ( ord_less_eq_int @ Y3 @ zero_zero_int )
           => ( P @ ( gcd_gcd_int @ X @ ( uminus_uminus_int @ Y3 ) ) ) ) )
       => ( ( ( ord_less_eq_int @ X @ zero_zero_int )
           => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
             => ( P @ ( gcd_gcd_int @ ( uminus_uminus_int @ X ) @ Y3 ) ) ) )
         => ( ( ( ord_less_eq_int @ X @ zero_zero_int )
             => ( ( ord_less_eq_int @ Y3 @ zero_zero_int )
               => ( P @ ( gcd_gcd_int @ ( uminus_uminus_int @ X ) @ ( uminus_uminus_int @ Y3 ) ) ) ) )
           => ( P @ ( gcd_gcd_int @ X @ Y3 ) ) ) ) ) ) ).

% gcd_cases_int
thf(fact_6249_sum_OatLeastLessThan__concat,axiom,
    ! [M: nat,N: nat,P4: nat,G: nat > rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ N @ P4 )
       => ( ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ N @ P4 ) ) )
          = ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ P4 ) ) ) ) ) ).

% sum.atLeastLessThan_concat
thf(fact_6250_sum_OatLeastLessThan__concat,axiom,
    ! [M: nat,N: nat,P4: nat,G: nat > int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ N @ P4 )
       => ( ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ N @ P4 ) ) )
          = ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ M @ P4 ) ) ) ) ) ).

% sum.atLeastLessThan_concat
thf(fact_6251_sum_OatLeastLessThan__concat,axiom,
    ! [M: nat,N: nat,P4: nat,G: nat > nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ N @ P4 )
       => ( ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ N @ P4 ) ) )
          = ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ P4 ) ) ) ) ) ).

% sum.atLeastLessThan_concat
thf(fact_6252_gcd__unique__int,axiom,
    ! [D: int,A: int,B: int] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ D )
        & ( dvd_dvd_int @ D @ A )
        & ( dvd_dvd_int @ D @ B )
        & ! [E3: int] :
            ( ( ( dvd_dvd_int @ E3 @ A )
              & ( dvd_dvd_int @ E3 @ B ) )
           => ( dvd_dvd_int @ E3 @ D ) ) )
      = ( D
        = ( gcd_gcd_int @ A @ B ) ) ) ).

% gcd_unique_int
thf(fact_6253_sum_OatLeast__int__atMost__int__shift,axiom,
    ! [G: int > nat,M: nat,N: nat] :
      ( ( groups4541462559716669496nt_nat @ G @ ( set_or1266510415728281911st_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) )
      = ( groups3542108847815614940at_nat @ ( comp_int_nat_nat @ G @ semiri1314217659103216013at_int ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% sum.atLeast_int_atMost_int_shift
thf(fact_6254_sum_OatLeast__int__atMost__int__shift,axiom,
    ! [G: int > int,M: nat,N: nat] :
      ( ( groups4538972089207619220nt_int @ G @ ( set_or1266510415728281911st_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) )
      = ( groups3539618377306564664at_int @ ( comp_int_int_nat @ G @ semiri1314217659103216013at_int ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% sum.atLeast_int_atMost_int_shift
thf(fact_6255_gcd__non__0__int,axiom,
    ! [Y3: int,X: int] :
      ( ( ord_less_int @ zero_zero_int @ Y3 )
     => ( ( gcd_gcd_int @ X @ Y3 )
        = ( gcd_gcd_int @ Y3 @ ( modulo_modulo_int @ X @ Y3 ) ) ) ) ).

% gcd_non_0_int
thf(fact_6256_gcd__code__int,axiom,
    ( gcd_gcd_int
    = ( ^ [K3: int,L4: int] : ( abs_abs_int @ ( if_int @ ( L4 = zero_zero_int ) @ K3 @ ( gcd_gcd_int @ L4 @ ( modulo_modulo_int @ ( abs_abs_int @ K3 ) @ ( abs_abs_int @ L4 ) ) ) ) ) ) ) ).

% gcd_code_int
thf(fact_6257_prod__Suc__fact,axiom,
    ! [N: nat] :
      ( ( groups708209901874060359at_nat @ suc @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
      = ( semiri1408675320244567234ct_nat @ N ) ) ).

% prod_Suc_fact
thf(fact_6258_prod__Suc__Suc__fact,axiom,
    ! [N: nat] :
      ( ( groups708209901874060359at_nat @ suc @ ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ N ) )
      = ( semiri1408675320244567234ct_nat @ N ) ) ).

% prod_Suc_Suc_fact
thf(fact_6259_sum_OatLeast__Suc__lessThan__Suc__shift,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups3542108847815614940at_nat @ ( comp_nat_nat_nat @ G @ suc ) @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% sum.atLeast_Suc_lessThan_Suc_shift
thf(fact_6260_sum_OatLeastLessThan__shift__bounds,axiom,
    ! [G: nat > nat,M: nat,K: nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups3542108847815614940at_nat @ ( comp_nat_nat_nat @ G @ ( plus_plus_nat @ K ) ) @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% sum.atLeastLessThan_shift_bounds
thf(fact_6261_prod_OatLeast__Suc__lessThan__Suc__shift,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups708209901874060359at_nat @ ( comp_nat_nat_nat @ G @ suc ) @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% prod.atLeast_Suc_lessThan_Suc_shift
thf(fact_6262_prod_OatLeast__Suc__lessThan__Suc__shift,axiom,
    ! [G: nat > int,M: nat,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups705719431365010083at_int @ ( comp_nat_int_nat @ G @ suc ) @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% prod.atLeast_Suc_lessThan_Suc_shift
thf(fact_6263_sum_Onat__diff__reindex,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) )
        @ ( set_ord_lessThan_nat @ N ) )
      = ( groups3542108847815614940at_nat @ G @ ( set_ord_lessThan_nat @ N ) ) ) ).

% sum.nat_diff_reindex
thf(fact_6264_prod_OatLeastLessThan__shift__bounds,axiom,
    ! [G: nat > nat,M: nat,K: nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups708209901874060359at_nat @ ( comp_nat_nat_nat @ G @ ( plus_plus_nat @ K ) ) @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% prod.atLeastLessThan_shift_bounds
thf(fact_6265_prod_OatLeastLessThan__shift__bounds,axiom,
    ! [G: nat > int,M: nat,K: nat,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) ) )
      = ( groups705719431365010083at_int @ ( comp_nat_int_nat @ G @ ( plus_plus_nat @ K ) ) @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% prod.atLeastLessThan_shift_bounds
thf(fact_6266_prod_Onat__diff__reindex,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) )
        @ ( set_ord_lessThan_nat @ N ) )
      = ( groups708209901874060359at_nat @ G @ ( set_ord_lessThan_nat @ N ) ) ) ).

% prod.nat_diff_reindex
thf(fact_6267_prod_Onat__diff__reindex,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) )
        @ ( set_ord_lessThan_nat @ N ) )
      = ( groups705719431365010083at_int @ G @ ( set_ord_lessThan_nat @ N ) ) ) ).

% prod.nat_diff_reindex
thf(fact_6268_prod_Otriangle__reindex,axiom,
    ! [G: nat > nat > nat,N: nat] :
      ( ( groups4077766827762148844at_nat @ ( produc6842872674320459806at_nat @ G )
        @ ( collec3392354462482085612at_nat
          @ ( produc6081775807080527818_nat_o
            @ ^ [I2: nat,J3: nat] : ( ord_less_nat @ ( plus_plus_nat @ I2 @ J3 ) @ N ) ) ) )
      = ( groups708209901874060359at_nat
        @ ^ [K3: nat] :
            ( groups708209901874060359at_nat
            @ ^ [I2: nat] : ( G @ I2 @ ( minus_minus_nat @ K3 @ I2 ) )
            @ ( set_ord_atMost_nat @ K3 ) )
        @ ( set_ord_lessThan_nat @ N ) ) ) ).

% prod.triangle_reindex
thf(fact_6269_prod_Otriangle__reindex,axiom,
    ! [G: nat > nat > int,N: nat] :
      ( ( groups4075276357253098568at_int @ ( produc6840382203811409530at_int @ G )
        @ ( collec3392354462482085612at_nat
          @ ( produc6081775807080527818_nat_o
            @ ^ [I2: nat,J3: nat] : ( ord_less_nat @ ( plus_plus_nat @ I2 @ J3 ) @ N ) ) ) )
      = ( groups705719431365010083at_int
        @ ^ [K3: nat] :
            ( groups705719431365010083at_int
            @ ^ [I2: nat] : ( G @ I2 @ ( minus_minus_nat @ K3 @ I2 ) )
            @ ( set_ord_atMost_nat @ K3 ) )
        @ ( set_ord_lessThan_nat @ N ) ) ) ).

% prod.triangle_reindex
thf(fact_6270_sum__shift__lb__Suc0__0__upt,axiom,
    ! [F: nat > int,K: nat] :
      ( ( ( F @ zero_zero_nat )
        = zero_zero_int )
     => ( ( groups3539618377306564664at_int @ F @ ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ K ) )
        = ( groups3539618377306564664at_int @ F @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) ) ) ) ).

% sum_shift_lb_Suc0_0_upt
thf(fact_6271_sum__shift__lb__Suc0__0__upt,axiom,
    ! [F: nat > code_integer,K: nat] :
      ( ( ( F @ zero_zero_nat )
        = zero_z3403309356797280102nteger )
     => ( ( groups7501900531339628137nteger @ F @ ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ K ) )
        = ( groups7501900531339628137nteger @ F @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) ) ) ) ).

% sum_shift_lb_Suc0_0_upt
thf(fact_6272_sum__shift__lb__Suc0__0__upt,axiom,
    ! [F: nat > rat,K: nat] :
      ( ( ( F @ zero_zero_nat )
        = zero_zero_rat )
     => ( ( groups2906978787729119204at_rat @ F @ ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ K ) )
        = ( groups2906978787729119204at_rat @ F @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) ) ) ) ).

% sum_shift_lb_Suc0_0_upt
thf(fact_6273_sum__shift__lb__Suc0__0__upt,axiom,
    ! [F: nat > code_natural,K: nat] :
      ( ( ( F @ zero_zero_nat )
        = zero_z2226904508553997617atural )
     => ( ( groups6325495683096345652atural @ F @ ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ K ) )
        = ( groups6325495683096345652atural @ F @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) ) ) ) ).

% sum_shift_lb_Suc0_0_upt
thf(fact_6274_sum__shift__lb__Suc0__0__upt,axiom,
    ! [F: nat > nat,K: nat] :
      ( ( ( F @ zero_zero_nat )
        = zero_zero_nat )
     => ( ( groups3542108847815614940at_nat @ F @ ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ K ) )
        = ( groups3542108847815614940at_nat @ F @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) ) ) ) ).

% sum_shift_lb_Suc0_0_upt
thf(fact_6275_sum_OatLeast0__lessThan__Suc,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) @ ( G @ N ) ) ) ).

% sum.atLeast0_lessThan_Suc
thf(fact_6276_sum_OatLeast0__lessThan__Suc,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) @ ( G @ N ) ) ) ).

% sum.atLeast0_lessThan_Suc
thf(fact_6277_sum_OatLeast0__lessThan__Suc,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) @ ( G @ N ) ) ) ).

% sum.atLeast0_lessThan_Suc
thf(fact_6278_sum_OatLeast__Suc__lessThan,axiom,
    ! [M: nat,N: nat,G: nat > rat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) )
        = ( plus_plus_rat @ ( G @ M ) @ ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ N ) ) ) ) ) ).

% sum.atLeast_Suc_lessThan
thf(fact_6279_sum_OatLeast__Suc__lessThan,axiom,
    ! [M: nat,N: nat,G: nat > int] :
      ( ( ord_less_nat @ M @ N )
     => ( ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ M @ N ) )
        = ( plus_plus_int @ ( G @ M ) @ ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ N ) ) ) ) ) ).

% sum.atLeast_Suc_lessThan
thf(fact_6280_sum_OatLeast__Suc__lessThan,axiom,
    ! [M: nat,N: nat,G: nat > nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) )
        = ( plus_plus_nat @ ( G @ M ) @ ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ N ) ) ) ) ) ).

% sum.atLeast_Suc_lessThan
thf(fact_6281_sum_OatLeastLessThan__Suc,axiom,
    ! [A: nat,B: nat,G: nat > rat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ A @ ( suc @ B ) ) )
        = ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ A @ B ) ) @ ( G @ B ) ) ) ) ).

% sum.atLeastLessThan_Suc
thf(fact_6282_sum_OatLeastLessThan__Suc,axiom,
    ! [A: nat,B: nat,G: nat > int] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ A @ ( suc @ B ) ) )
        = ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ A @ B ) ) @ ( G @ B ) ) ) ) ).

% sum.atLeastLessThan_Suc
thf(fact_6283_sum_OatLeastLessThan__Suc,axiom,
    ! [A: nat,B: nat,G: nat > nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ A @ ( suc @ B ) ) )
        = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ A @ B ) ) @ ( G @ B ) ) ) ) ).

% sum.atLeastLessThan_Suc
thf(fact_6284_prod_OatLeast0__lessThan__Suc,axiom,
    ! [G: nat > code_integer,N: nat] :
      ( ( groups3455450783089532116nteger @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_3573771949741848930nteger @ ( groups3455450783089532116nteger @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) @ ( G @ N ) ) ) ).

% prod.atLeast0_lessThan_Suc
thf(fact_6285_prod_OatLeast0__lessThan__Suc,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups73079841787564623at_rat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_rat @ ( groups73079841787564623at_rat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) @ ( G @ N ) ) ) ).

% prod.atLeast0_lessThan_Suc
thf(fact_6286_prod_OatLeast0__lessThan__Suc,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_nat @ ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) @ ( G @ N ) ) ) ).

% prod.atLeast0_lessThan_Suc
thf(fact_6287_prod_OatLeast0__lessThan__Suc,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_int @ ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) @ ( G @ N ) ) ) ).

% prod.atLeast0_lessThan_Suc
thf(fact_6288_sum_Olast__plus,axiom,
    ! [M: nat,N: nat,G: nat > rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( plus_plus_rat @ ( G @ N ) @ ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ) ) ).

% sum.last_plus
thf(fact_6289_sum_Olast__plus,axiom,
    ! [M: nat,N: nat,G: nat > int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( plus_plus_int @ ( G @ N ) @ ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ) ) ).

% sum.last_plus
thf(fact_6290_sum_Olast__plus,axiom,
    ! [M: nat,N: nat,G: nat > nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
        = ( plus_plus_nat @ ( G @ N ) @ ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ) ) ).

% sum.last_plus
thf(fact_6291_fact__prod__Suc,axiom,
    ( semiri1406184849735516958ct_int
    = ( ^ [N5: nat] : ( semiri1314217659103216013at_int @ ( groups708209901874060359at_nat @ suc @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N5 ) ) ) ) ) ).

% fact_prod_Suc
thf(fact_6292_fact__prod__Suc,axiom,
    ( semiri1408675320244567234ct_nat
    = ( ^ [N5: nat] : ( semiri1316708129612266289at_nat @ ( groups708209901874060359at_nat @ suc @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N5 ) ) ) ) ) ).

% fact_prod_Suc
thf(fact_6293_sum_OlessThan__Suc__shift,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = ( plus_plus_rat @ ( G @ zero_zero_nat )
        @ ( groups2906978787729119204at_rat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% sum.lessThan_Suc_shift
thf(fact_6294_sum_OlessThan__Suc__shift,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = ( plus_plus_int @ ( G @ zero_zero_nat )
        @ ( groups3539618377306564664at_int
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% sum.lessThan_Suc_shift
thf(fact_6295_sum_OlessThan__Suc__shift,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( G @ zero_zero_nat )
        @ ( groups3542108847815614940at_nat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% sum.lessThan_Suc_shift
thf(fact_6296_sum__lessThan__telescope,axiom,
    ! [F: nat > int,M: nat] :
      ( ( groups3539618377306564664at_int
        @ ^ [N5: nat] : ( minus_minus_int @ ( F @ ( suc @ N5 ) ) @ ( F @ N5 ) )
        @ ( set_ord_lessThan_nat @ M ) )
      = ( minus_minus_int @ ( F @ M ) @ ( F @ zero_zero_nat ) ) ) ).

% sum_lessThan_telescope
thf(fact_6297_sum__lessThan__telescope,axiom,
    ! [F: nat > code_integer,M: nat] :
      ( ( groups7501900531339628137nteger
        @ ^ [N5: nat] : ( minus_8373710615458151222nteger @ ( F @ ( suc @ N5 ) ) @ ( F @ N5 ) )
        @ ( set_ord_lessThan_nat @ M ) )
      = ( minus_8373710615458151222nteger @ ( F @ M ) @ ( F @ zero_zero_nat ) ) ) ).

% sum_lessThan_telescope
thf(fact_6298_sum__lessThan__telescope,axiom,
    ! [F: nat > rat,M: nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [N5: nat] : ( minus_minus_rat @ ( F @ ( suc @ N5 ) ) @ ( F @ N5 ) )
        @ ( set_ord_lessThan_nat @ M ) )
      = ( minus_minus_rat @ ( F @ M ) @ ( F @ zero_zero_nat ) ) ) ).

% sum_lessThan_telescope
thf(fact_6299_sum__lessThan__telescope_H,axiom,
    ! [F: nat > int,M: nat] :
      ( ( groups3539618377306564664at_int
        @ ^ [N5: nat] : ( minus_minus_int @ ( F @ N5 ) @ ( F @ ( suc @ N5 ) ) )
        @ ( set_ord_lessThan_nat @ M ) )
      = ( minus_minus_int @ ( F @ zero_zero_nat ) @ ( F @ M ) ) ) ).

% sum_lessThan_telescope'
thf(fact_6300_sum__lessThan__telescope_H,axiom,
    ! [F: nat > code_integer,M: nat] :
      ( ( groups7501900531339628137nteger
        @ ^ [N5: nat] : ( minus_8373710615458151222nteger @ ( F @ N5 ) @ ( F @ ( suc @ N5 ) ) )
        @ ( set_ord_lessThan_nat @ M ) )
      = ( minus_8373710615458151222nteger @ ( F @ zero_zero_nat ) @ ( F @ M ) ) ) ).

% sum_lessThan_telescope'
thf(fact_6301_sum__lessThan__telescope_H,axiom,
    ! [F: nat > rat,M: nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [N5: nat] : ( minus_minus_rat @ ( F @ N5 ) @ ( F @ ( suc @ N5 ) ) )
        @ ( set_ord_lessThan_nat @ M ) )
      = ( minus_minus_rat @ ( F @ zero_zero_nat ) @ ( F @ M ) ) ) ).

% sum_lessThan_telescope'
thf(fact_6302_prod_OlessThan__Suc__shift,axiom,
    ! [G: nat > code_integer,N: nat] :
      ( ( groups3455450783089532116nteger @ G @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = ( times_3573771949741848930nteger @ ( G @ zero_zero_nat )
        @ ( groups3455450783089532116nteger
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% prod.lessThan_Suc_shift
thf(fact_6303_prod_OlessThan__Suc__shift,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups73079841787564623at_rat @ G @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = ( times_times_rat @ ( G @ zero_zero_nat )
        @ ( groups73079841787564623at_rat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% prod.lessThan_Suc_shift
thf(fact_6304_prod_OlessThan__Suc__shift,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = ( times_times_nat @ ( G @ zero_zero_nat )
        @ ( groups708209901874060359at_nat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% prod.lessThan_Suc_shift
thf(fact_6305_prod_OlessThan__Suc__shift,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_ord_lessThan_nat @ ( suc @ N ) ) )
      = ( times_times_int @ ( G @ zero_zero_nat )
        @ ( groups705719431365010083at_int
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% prod.lessThan_Suc_shift
thf(fact_6306_sum__diff__distrib,axiom,
    ! [Q: nat > nat,P: nat > nat,N: nat] :
      ( ! [X5: nat] : ( ord_less_eq_nat @ ( Q @ X5 ) @ ( P @ X5 ) )
     => ( ( minus_minus_nat @ ( groups3542108847815614940at_nat @ P @ ( set_ord_lessThan_nat @ N ) ) @ ( groups3542108847815614940at_nat @ Q @ ( set_ord_lessThan_nat @ N ) ) )
        = ( groups3542108847815614940at_nat
          @ ^ [X4: nat] : ( minus_minus_nat @ ( P @ X4 ) @ ( Q @ X4 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% sum_diff_distrib
thf(fact_6307_sum_OatLeast1__atMost__eq,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) )
      = ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( G @ ( suc @ K3 ) )
        @ ( set_ord_lessThan_nat @ N ) ) ) ).

% sum.atLeast1_atMost_eq
thf(fact_6308_prod_OatLeast1__atMost__eq,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) )
      = ( groups708209901874060359at_nat
        @ ^ [K3: nat] : ( G @ ( suc @ K3 ) )
        @ ( set_ord_lessThan_nat @ N ) ) ) ).

% prod.atLeast1_atMost_eq
thf(fact_6309_prod_OatLeast1__atMost__eq,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N ) )
      = ( groups705719431365010083at_int
        @ ^ [K3: nat] : ( G @ ( suc @ K3 ) )
        @ ( set_ord_lessThan_nat @ N ) ) ) ).

% prod.atLeast1_atMost_eq
thf(fact_6310_sum__bounds__lt__plus1,axiom,
    ! [F: nat > nat,Mm: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K3: nat] : ( F @ ( suc @ K3 ) )
        @ ( set_ord_lessThan_nat @ Mm ) )
      = ( groups3542108847815614940at_nat @ F @ ( set_or1269000886237332187st_nat @ one_one_nat @ Mm ) ) ) ).

% sum_bounds_lt_plus1
thf(fact_6311_sum_Onested__swap_H,axiom,
    ! [A: nat > nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( groups3542108847815614940at_nat @ ( A @ I2 ) @ ( set_ord_lessThan_nat @ I2 ) )
        @ ( set_ord_atMost_nat @ N ) )
      = ( groups3542108847815614940at_nat
        @ ^ [J3: nat] :
            ( groups3542108847815614940at_nat
            @ ^ [I2: nat] : ( A @ I2 @ J3 )
            @ ( set_or1269000886237332187st_nat @ ( suc @ J3 ) @ N ) )
        @ ( set_ord_lessThan_nat @ N ) ) ) ).

% sum.nested_swap'
thf(fact_6312_prod_Onested__swap_H,axiom,
    ! [A: nat > nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( groups708209901874060359at_nat @ ( A @ I2 ) @ ( set_ord_lessThan_nat @ I2 ) )
        @ ( set_ord_atMost_nat @ N ) )
      = ( groups708209901874060359at_nat
        @ ^ [J3: nat] :
            ( groups708209901874060359at_nat
            @ ^ [I2: nat] : ( A @ I2 @ J3 )
            @ ( set_or1269000886237332187st_nat @ ( suc @ J3 ) @ N ) )
        @ ( set_ord_lessThan_nat @ N ) ) ) ).

% prod.nested_swap'
thf(fact_6313_prod_Onested__swap_H,axiom,
    ! [A: nat > nat > int,N: nat] :
      ( ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( groups705719431365010083at_int @ ( A @ I2 ) @ ( set_ord_lessThan_nat @ I2 ) )
        @ ( set_ord_atMost_nat @ N ) )
      = ( groups705719431365010083at_int
        @ ^ [J3: nat] :
            ( groups705719431365010083at_int
            @ ^ [I2: nat] : ( A @ I2 @ J3 )
            @ ( set_or1269000886237332187st_nat @ ( suc @ J3 ) @ N ) )
        @ ( set_ord_lessThan_nat @ N ) ) ) ).

% prod.nested_swap'
thf(fact_6314_sum__Suc__diff_H,axiom,
    ! [M: nat,N: nat,F: nat > int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3539618377306564664at_int
          @ ^ [I2: nat] : ( minus_minus_int @ ( F @ ( suc @ I2 ) ) @ ( F @ I2 ) )
          @ ( set_or4665077453230672383an_nat @ M @ N ) )
        = ( minus_minus_int @ ( F @ N ) @ ( F @ M ) ) ) ) ).

% sum_Suc_diff'
thf(fact_6315_sum__Suc__diff_H,axiom,
    ! [M: nat,N: nat,F: nat > code_integer] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups7501900531339628137nteger
          @ ^ [I2: nat] : ( minus_8373710615458151222nteger @ ( F @ ( suc @ I2 ) ) @ ( F @ I2 ) )
          @ ( set_or4665077453230672383an_nat @ M @ N ) )
        = ( minus_8373710615458151222nteger @ ( F @ N ) @ ( F @ M ) ) ) ) ).

% sum_Suc_diff'
thf(fact_6316_sum__Suc__diff_H,axiom,
    ! [M: nat,N: nat,F: nat > rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups2906978787729119204at_rat
          @ ^ [I2: nat] : ( minus_minus_rat @ ( F @ ( suc @ I2 ) ) @ ( F @ I2 ) )
          @ ( set_or4665077453230672383an_nat @ M @ N ) )
        = ( minus_minus_rat @ ( F @ N ) @ ( F @ M ) ) ) ) ).

% sum_Suc_diff'
thf(fact_6317_sum_OatLeastLessThan__rev,axiom,
    ! [G: nat > nat,N: nat,M: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ N @ M ) )
      = ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ ( suc @ I2 ) ) )
        @ ( set_or4665077453230672383an_nat @ N @ M ) ) ) ).

% sum.atLeastLessThan_rev
thf(fact_6318_sum_Onested__swap,axiom,
    ! [A: nat > nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( groups3542108847815614940at_nat @ ( A @ I2 ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( groups3542108847815614940at_nat
        @ ^ [J3: nat] :
            ( groups3542108847815614940at_nat
            @ ^ [I2: nat] : ( A @ I2 @ J3 )
            @ ( set_or1269000886237332187st_nat @ ( suc @ J3 ) @ N ) )
        @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ).

% sum.nested_swap
thf(fact_6319_prod_OatLeastLessThan__rev,axiom,
    ! [G: nat > nat,N: nat,M: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ N @ M ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ ( suc @ I2 ) ) )
        @ ( set_or4665077453230672383an_nat @ N @ M ) ) ) ).

% prod.atLeastLessThan_rev
thf(fact_6320_prod_OatLeastLessThan__rev,axiom,
    ! [G: nat > int,N: nat,M: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ N @ M ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ ( suc @ I2 ) ) )
        @ ( set_or4665077453230672383an_nat @ N @ M ) ) ) ).

% prod.atLeastLessThan_rev
thf(fact_6321_prod_Onested__swap,axiom,
    ! [A: nat > nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( groups708209901874060359at_nat @ ( A @ I2 ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( groups708209901874060359at_nat
        @ ^ [J3: nat] :
            ( groups708209901874060359at_nat
            @ ^ [I2: nat] : ( A @ I2 @ J3 )
            @ ( set_or1269000886237332187st_nat @ ( suc @ J3 ) @ N ) )
        @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ).

% prod.nested_swap
thf(fact_6322_prod_Onested__swap,axiom,
    ! [A: nat > nat > int,N: nat] :
      ( ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( groups705719431365010083at_int @ ( A @ I2 ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( groups705719431365010083at_int
        @ ^ [J3: nat] :
            ( groups705719431365010083at_int
            @ ^ [I2: nat] : ( A @ I2 @ J3 )
            @ ( set_or1269000886237332187st_nat @ ( suc @ J3 ) @ N ) )
        @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ).

% prod.nested_swap
thf(fact_6323_fact__prod__rev,axiom,
    ( semiri1406184849735516958ct_int
    = ( ^ [N5: nat] : ( semiri1314217659103216013at_int @ ( groups708209901874060359at_nat @ ( minus_minus_nat @ N5 ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N5 ) ) ) ) ) ).

% fact_prod_rev
thf(fact_6324_fact__prod__rev,axiom,
    ( semiri1408675320244567234ct_nat
    = ( ^ [N5: nat] : ( semiri1316708129612266289at_nat @ ( groups708209901874060359at_nat @ ( minus_minus_nat @ N5 ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N5 ) ) ) ) ) ).

% fact_prod_rev
thf(fact_6325_sum_Ohead__if,axiom,
    ! [N: nat,M: nat,G: nat > int] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = zero_zero_int ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups3539618377306564664at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% sum.head_if
thf(fact_6326_sum_Ohead__if,axiom,
    ! [N: nat,M: nat,G: nat > code_integer] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups7501900531339628137nteger @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = zero_z3403309356797280102nteger ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups7501900531339628137nteger @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( plus_p5714425477246183910nteger @ ( groups7501900531339628137nteger @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% sum.head_if
thf(fact_6327_sum_Ohead__if,axiom,
    ! [N: nat,M: nat,G: nat > rat] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = zero_zero_rat ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups2906978787729119204at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% sum.head_if
thf(fact_6328_sum_Ohead__if,axiom,
    ! [N: nat,M: nat,G: nat > code_natural] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups6325495683096345652atural @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = zero_z2226904508553997617atural ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups6325495683096345652atural @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( plus_p4538020629002901425atural @ ( groups6325495683096345652atural @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% sum.head_if
thf(fact_6329_sum_Ohead__if,axiom,
    ! [N: nat,M: nat,G: nat > nat] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = zero_zero_nat ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups3542108847815614940at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% sum.head_if
thf(fact_6330_prod_Ohead__if,axiom,
    ! [N: nat,M: nat,G: nat > code_natural] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups2279045934846249631atural @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = one_one_Code_natural ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups2279045934846249631atural @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( times_2397367101498566445atural @ ( groups2279045934846249631atural @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% prod.head_if
thf(fact_6331_prod_Ohead__if,axiom,
    ! [N: nat,M: nat,G: nat > code_integer] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = one_one_Code_integer ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups3455450783089532116nteger @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( times_3573771949741848930nteger @ ( groups3455450783089532116nteger @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% prod.head_if
thf(fact_6332_prod_Ohead__if,axiom,
    ! [N: nat,M: nat,G: nat > rat] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = one_one_rat ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups73079841787564623at_rat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( times_times_rat @ ( groups73079841787564623at_rat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% prod.head_if
thf(fact_6333_prod_Ohead__if,axiom,
    ! [N: nat,M: nat,G: nat > nat] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = one_one_nat ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups708209901874060359at_nat @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( times_times_nat @ ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% prod.head_if
thf(fact_6334_prod_Ohead__if,axiom,
    ! [N: nat,M: nat,G: nat > int] :
      ( ( ( ord_less_nat @ N @ M )
       => ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = one_one_int ) )
      & ( ~ ( ord_less_nat @ N @ M )
       => ( ( groups705719431365010083at_int @ G @ ( set_or1269000886237332187st_nat @ M @ N ) )
          = ( times_times_int @ ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) @ ( G @ N ) ) ) ) ) ).

% prod.head_if
thf(fact_6335_power__diff__1__eq,axiom,
    ! [X: int,N: nat] :
      ( ( minus_minus_int @ ( power_power_int @ X @ N ) @ one_one_int )
      = ( times_times_int @ ( minus_minus_int @ X @ one_one_int ) @ ( groups3539618377306564664at_int @ ( power_power_int @ X ) @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% power_diff_1_eq
thf(fact_6336_power__diff__1__eq,axiom,
    ! [X: code_integer,N: nat] :
      ( ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ X @ N ) @ one_one_Code_integer )
      = ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ X @ one_one_Code_integer ) @ ( groups7501900531339628137nteger @ ( power_8256067586552552935nteger @ X ) @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% power_diff_1_eq
thf(fact_6337_power__diff__1__eq,axiom,
    ! [X: rat,N: nat] :
      ( ( minus_minus_rat @ ( power_power_rat @ X @ N ) @ one_one_rat )
      = ( times_times_rat @ ( minus_minus_rat @ X @ one_one_rat ) @ ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% power_diff_1_eq
thf(fact_6338_one__diff__power__eq,axiom,
    ! [X: int,N: nat] :
      ( ( minus_minus_int @ one_one_int @ ( power_power_int @ X @ N ) )
      = ( times_times_int @ ( minus_minus_int @ one_one_int @ X ) @ ( groups3539618377306564664at_int @ ( power_power_int @ X ) @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% one_diff_power_eq
thf(fact_6339_one__diff__power__eq,axiom,
    ! [X: code_integer,N: nat] :
      ( ( minus_8373710615458151222nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ X @ N ) )
      = ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ one_one_Code_integer @ X ) @ ( groups7501900531339628137nteger @ ( power_8256067586552552935nteger @ X ) @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% one_diff_power_eq
thf(fact_6340_one__diff__power__eq,axiom,
    ! [X: rat,N: nat] :
      ( ( minus_minus_rat @ one_one_rat @ ( power_power_rat @ X @ N ) )
      = ( times_times_rat @ ( minus_minus_rat @ one_one_rat @ X ) @ ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% one_diff_power_eq
thf(fact_6341_geometric__sum,axiom,
    ! [X: rat,N: nat] :
      ( ( X != one_one_rat )
     => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_ord_lessThan_nat @ N ) )
        = ( divide_divide_rat @ ( minus_minus_rat @ ( power_power_rat @ X @ N ) @ one_one_rat ) @ ( minus_minus_rat @ X @ one_one_rat ) ) ) ) ).

% geometric_sum
thf(fact_6342_sum_OatLeast0__lessThan__Suc__shift,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_rat @ ( G @ zero_zero_nat ) @ ( groups2906978787729119204at_rat @ ( comp_nat_rat_nat @ G @ suc ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).

% sum.atLeast0_lessThan_Suc_shift
thf(fact_6343_sum_OatLeast0__lessThan__Suc__shift,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_int @ ( G @ zero_zero_nat ) @ ( groups3539618377306564664at_int @ ( comp_nat_int_nat @ G @ suc ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).

% sum.atLeast0_lessThan_Suc_shift
thf(fact_6344_sum_OatLeast0__lessThan__Suc__shift,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( G @ zero_zero_nat ) @ ( groups3542108847815614940at_nat @ ( comp_nat_nat_nat @ G @ suc ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).

% sum.atLeast0_lessThan_Suc_shift
thf(fact_6345_prod_OatLeast0__lessThan__Suc__shift,axiom,
    ! [G: nat > code_integer,N: nat] :
      ( ( groups3455450783089532116nteger @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_3573771949741848930nteger @ ( G @ zero_zero_nat ) @ ( groups3455450783089532116nteger @ ( comp_n3898172953802868194er_nat @ G @ suc ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).

% prod.atLeast0_lessThan_Suc_shift
thf(fact_6346_prod_OatLeast0__lessThan__Suc__shift,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups73079841787564623at_rat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_rat @ ( G @ zero_zero_nat ) @ ( groups73079841787564623at_rat @ ( comp_nat_rat_nat @ G @ suc ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).

% prod.atLeast0_lessThan_Suc_shift
thf(fact_6347_prod_OatLeast0__lessThan__Suc__shift,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_nat @ ( G @ zero_zero_nat ) @ ( groups708209901874060359at_nat @ ( comp_nat_nat_nat @ G @ suc ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).

% prod.atLeast0_lessThan_Suc_shift
thf(fact_6348_prod_OatLeast0__lessThan__Suc__shift,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) ) )
      = ( times_times_int @ ( G @ zero_zero_nat ) @ ( groups705719431365010083at_int @ ( comp_nat_int_nat @ G @ suc ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).

% prod.atLeast0_lessThan_Suc_shift
thf(fact_6349_sum_OatMost__shift,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups2906978787729119204at_rat @ G @ ( set_ord_atMost_nat @ N ) )
      = ( plus_plus_rat @ ( G @ zero_zero_nat )
        @ ( groups2906978787729119204at_rat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% sum.atMost_shift
thf(fact_6350_sum_OatMost__shift,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups3539618377306564664at_int @ G @ ( set_ord_atMost_nat @ N ) )
      = ( plus_plus_int @ ( G @ zero_zero_nat )
        @ ( groups3539618377306564664at_int
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% sum.atMost_shift
thf(fact_6351_sum_OatMost__shift,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_ord_atMost_nat @ N ) )
      = ( plus_plus_nat @ ( G @ zero_zero_nat )
        @ ( groups3542108847815614940at_nat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% sum.atMost_shift
thf(fact_6352_prod_OatMost__shift,axiom,
    ! [G: nat > code_integer,N: nat] :
      ( ( groups3455450783089532116nteger @ G @ ( set_ord_atMost_nat @ N ) )
      = ( times_3573771949741848930nteger @ ( G @ zero_zero_nat )
        @ ( groups3455450783089532116nteger
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% prod.atMost_shift
thf(fact_6353_prod_OatMost__shift,axiom,
    ! [G: nat > rat,N: nat] :
      ( ( groups73079841787564623at_rat @ G @ ( set_ord_atMost_nat @ N ) )
      = ( times_times_rat @ ( G @ zero_zero_nat )
        @ ( groups73079841787564623at_rat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% prod.atMost_shift
thf(fact_6354_prod_OatMost__shift,axiom,
    ! [G: nat > nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_ord_atMost_nat @ N ) )
      = ( times_times_nat @ ( G @ zero_zero_nat )
        @ ( groups708209901874060359at_nat
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% prod.atMost_shift
thf(fact_6355_prod_OatMost__shift,axiom,
    ! [G: nat > int,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_ord_atMost_nat @ N ) )
      = ( times_times_int @ ( G @ zero_zero_nat )
        @ ( groups705719431365010083at_int
          @ ^ [I2: nat] : ( G @ ( suc @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% prod.atMost_shift
thf(fact_6356_sum_OatLeastLessThan__shift__0,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) )
      = ( groups3542108847815614940at_nat @ ( comp_nat_nat_nat @ G @ ( plus_plus_nat @ M ) ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) ) ) ) ).

% sum.atLeastLessThan_shift_0
thf(fact_6357_prod_OatLeastLessThan__shift__0,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) )
      = ( groups708209901874060359at_nat @ ( comp_nat_nat_nat @ G @ ( plus_plus_nat @ M ) ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) ) ) ) ).

% prod.atLeastLessThan_shift_0
thf(fact_6358_prod_OatLeastLessThan__shift__0,axiom,
    ! [G: nat > int,M: nat,N: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ M @ N ) )
      = ( groups705719431365010083at_int @ ( comp_nat_int_nat @ G @ ( plus_plus_nat @ M ) ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) ) ) ) ).

% prod.atLeastLessThan_shift_0
thf(fact_6359_sum_OatLeastLessThan__rev__at__least__Suc__atMost,axiom,
    ! [G: nat > nat,N: nat,M: nat] :
      ( ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ N @ M ) )
      = ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ ( suc @ N ) @ M ) ) ) ).

% sum.atLeastLessThan_rev_at_least_Suc_atMost
thf(fact_6360_prod_OatLeastLessThan__rev__at__least__Suc__atMost,axiom,
    ! [G: nat > nat,N: nat,M: nat] :
      ( ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ N @ M ) )
      = ( groups708209901874060359at_nat
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ ( suc @ N ) @ M ) ) ) ).

% prod.atLeastLessThan_rev_at_least_Suc_atMost
thf(fact_6361_prod_OatLeastLessThan__rev__at__least__Suc__atMost,axiom,
    ! [G: nat > int,N: nat,M: nat] :
      ( ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ N @ M ) )
      = ( groups705719431365010083at_int
        @ ^ [I2: nat] : ( G @ ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ I2 ) )
        @ ( set_or1269000886237332187st_nat @ ( suc @ N ) @ M ) ) ) ).

% prod.atLeastLessThan_rev_at_least_Suc_atMost
thf(fact_6362_pochhammer__prod,axiom,
    ( comm_s4028243227959126397er_rat
    = ( ^ [A4: rat,N5: nat] :
          ( groups73079841787564623at_rat
          @ ^ [I2: nat] : ( plus_plus_rat @ A4 @ ( semiri681578069525770553at_rat @ I2 ) )
          @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N5 ) ) ) ) ).

% pochhammer_prod
thf(fact_6363_pochhammer__prod,axiom,
    ( comm_s4663373288045622133er_nat
    = ( ^ [A4: nat,N5: nat] :
          ( groups708209901874060359at_nat
          @ ^ [I2: nat] : ( plus_plus_nat @ A4 @ ( semiri1316708129612266289at_nat @ I2 ) )
          @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N5 ) ) ) ) ).

% pochhammer_prod
thf(fact_6364_pochhammer__prod,axiom,
    ( comm_s4660882817536571857er_int
    = ( ^ [A4: int,N5: nat] :
          ( groups705719431365010083at_int
          @ ^ [I2: nat] : ( plus_plus_int @ A4 @ ( semiri1314217659103216013at_int @ I2 ) )
          @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N5 ) ) ) ) ).

% pochhammer_prod
thf(fact_6365_sum_OatLeast__lessThan__pred__shift,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ( comp_nat_nat_nat @ G
          @ ^ [N5: nat] : ( minus_minus_nat @ N5 @ ( suc @ zero_zero_nat ) ) )
        @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups3542108847815614940at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% sum.atLeast_lessThan_pred_shift
thf(fact_6366_prod_OatLeast__lessThan__pred__shift,axiom,
    ! [G: nat > nat,M: nat,N: nat] :
      ( ( groups708209901874060359at_nat
        @ ( comp_nat_nat_nat @ G
          @ ^ [N5: nat] : ( minus_minus_nat @ N5 @ ( suc @ zero_zero_nat ) ) )
        @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups708209901874060359at_nat @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% prod.atLeast_lessThan_pred_shift
thf(fact_6367_prod_OatLeast__lessThan__pred__shift,axiom,
    ! [G: nat > int,M: nat,N: nat] :
      ( ( groups705719431365010083at_int
        @ ( comp_nat_int_nat @ G
          @ ^ [N5: nat] : ( minus_minus_nat @ N5 @ ( suc @ zero_zero_nat ) ) )
        @ ( set_or4665077453230672383an_nat @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( groups705719431365010083at_int @ G @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ).

% prod.atLeast_lessThan_pred_shift
thf(fact_6368_sum__gp__strict,axiom,
    ! [X: rat,N: nat] :
      ( ( ( X = one_one_rat )
       => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_ord_lessThan_nat @ N ) )
          = ( semiri681578069525770553at_rat @ N ) ) )
      & ( ( X != one_one_rat )
       => ( ( groups2906978787729119204at_rat @ ( power_power_rat @ X ) @ ( set_ord_lessThan_nat @ N ) )
          = ( divide_divide_rat @ ( minus_minus_rat @ one_one_rat @ ( power_power_rat @ X @ N ) ) @ ( minus_minus_rat @ one_one_rat @ X ) ) ) ) ) ).

% sum_gp_strict
thf(fact_6369_power__diff__sumr2,axiom,
    ! [X: int,N: nat,Y3: int] :
      ( ( minus_minus_int @ ( power_power_int @ X @ N ) @ ( power_power_int @ Y3 @ N ) )
      = ( times_times_int @ ( minus_minus_int @ X @ Y3 )
        @ ( groups3539618377306564664at_int
          @ ^ [I2: nat] : ( times_times_int @ ( power_power_int @ Y3 @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) ) @ ( power_power_int @ X @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% power_diff_sumr2
thf(fact_6370_power__diff__sumr2,axiom,
    ! [X: code_integer,N: nat,Y3: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ X @ N ) @ ( power_8256067586552552935nteger @ Y3 @ N ) )
      = ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ X @ Y3 )
        @ ( groups7501900531339628137nteger
          @ ^ [I2: nat] : ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ Y3 @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) ) @ ( power_8256067586552552935nteger @ X @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% power_diff_sumr2
thf(fact_6371_power__diff__sumr2,axiom,
    ! [X: rat,N: nat,Y3: rat] :
      ( ( minus_minus_rat @ ( power_power_rat @ X @ N ) @ ( power_power_rat @ Y3 @ N ) )
      = ( times_times_rat @ ( minus_minus_rat @ X @ Y3 )
        @ ( groups2906978787729119204at_rat
          @ ^ [I2: nat] : ( times_times_rat @ ( power_power_rat @ Y3 @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) ) @ ( power_power_rat @ X @ I2 ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% power_diff_sumr2
thf(fact_6372_diff__power__eq__sum,axiom,
    ! [X: int,N: nat,Y3: int] :
      ( ( minus_minus_int @ ( power_power_int @ X @ ( suc @ N ) ) @ ( power_power_int @ Y3 @ ( suc @ N ) ) )
      = ( times_times_int @ ( minus_minus_int @ X @ Y3 )
        @ ( groups3539618377306564664at_int
          @ ^ [P5: nat] : ( times_times_int @ ( power_power_int @ X @ P5 ) @ ( power_power_int @ Y3 @ ( minus_minus_nat @ N @ P5 ) ) )
          @ ( set_ord_lessThan_nat @ ( suc @ N ) ) ) ) ) ).

% diff_power_eq_sum
thf(fact_6373_diff__power__eq__sum,axiom,
    ! [X: code_integer,N: nat,Y3: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( power_8256067586552552935nteger @ X @ ( suc @ N ) ) @ ( power_8256067586552552935nteger @ Y3 @ ( suc @ N ) ) )
      = ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ X @ Y3 )
        @ ( groups7501900531339628137nteger
          @ ^ [P5: nat] : ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ X @ P5 ) @ ( power_8256067586552552935nteger @ Y3 @ ( minus_minus_nat @ N @ P5 ) ) )
          @ ( set_ord_lessThan_nat @ ( suc @ N ) ) ) ) ) ).

% diff_power_eq_sum
thf(fact_6374_diff__power__eq__sum,axiom,
    ! [X: rat,N: nat,Y3: rat] :
      ( ( minus_minus_rat @ ( power_power_rat @ X @ ( suc @ N ) ) @ ( power_power_rat @ Y3 @ ( suc @ N ) ) )
      = ( times_times_rat @ ( minus_minus_rat @ X @ Y3 )
        @ ( groups2906978787729119204at_rat
          @ ^ [P5: nat] : ( times_times_rat @ ( power_power_rat @ X @ P5 ) @ ( power_power_rat @ Y3 @ ( minus_minus_nat @ N @ P5 ) ) )
          @ ( set_ord_lessThan_nat @ ( suc @ N ) ) ) ) ) ).

% diff_power_eq_sum
thf(fact_6375_one__diff__power__eq_H,axiom,
    ! [X: int,N: nat] :
      ( ( minus_minus_int @ one_one_int @ ( power_power_int @ X @ N ) )
      = ( times_times_int @ ( minus_minus_int @ one_one_int @ X )
        @ ( groups3539618377306564664at_int
          @ ^ [I2: nat] : ( power_power_int @ X @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% one_diff_power_eq'
thf(fact_6376_one__diff__power__eq_H,axiom,
    ! [X: code_integer,N: nat] :
      ( ( minus_8373710615458151222nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ X @ N ) )
      = ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ one_one_Code_integer @ X )
        @ ( groups7501900531339628137nteger
          @ ^ [I2: nat] : ( power_8256067586552552935nteger @ X @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% one_diff_power_eq'
thf(fact_6377_one__diff__power__eq_H,axiom,
    ! [X: rat,N: nat] :
      ( ( minus_minus_rat @ one_one_rat @ ( power_power_rat @ X @ N ) )
      = ( times_times_rat @ ( minus_minus_rat @ one_one_rat @ X )
        @ ( groups2906978787729119204at_rat
          @ ^ [I2: nat] : ( power_power_rat @ X @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) )
          @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% one_diff_power_eq'
thf(fact_6378_prod_Otriangle__reindex__eq,axiom,
    ! [G: nat > nat > nat,N: nat] :
      ( ( groups4077766827762148844at_nat @ ( produc6842872674320459806at_nat @ G )
        @ ( collec3392354462482085612at_nat
          @ ( produc6081775807080527818_nat_o
            @ ^ [I2: nat,J3: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ J3 ) @ N ) ) ) )
      = ( groups708209901874060359at_nat
        @ ^ [K3: nat] :
            ( groups708209901874060359at_nat
            @ ^ [I2: nat] : ( G @ I2 @ ( minus_minus_nat @ K3 @ I2 ) )
            @ ( set_ord_atMost_nat @ K3 ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% prod.triangle_reindex_eq
thf(fact_6379_prod_Otriangle__reindex__eq,axiom,
    ! [G: nat > nat > int,N: nat] :
      ( ( groups4075276357253098568at_int @ ( produc6840382203811409530at_int @ G )
        @ ( collec3392354462482085612at_nat
          @ ( produc6081775807080527818_nat_o
            @ ^ [I2: nat,J3: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ J3 ) @ N ) ) ) )
      = ( groups705719431365010083at_int
        @ ^ [K3: nat] :
            ( groups705719431365010083at_int
            @ ^ [I2: nat] : ( G @ I2 @ ( minus_minus_nat @ K3 @ I2 ) )
            @ ( set_ord_atMost_nat @ K3 ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% prod.triangle_reindex_eq
thf(fact_6380_gbinomial__altdef__of__nat,axiom,
    ( gbinomial_rat
    = ( ^ [A4: rat,K3: nat] :
          ( groups73079841787564623at_rat
          @ ^ [I2: nat] : ( divide_divide_rat @ ( minus_minus_rat @ A4 @ ( semiri681578069525770553at_rat @ I2 ) ) @ ( semiri681578069525770553at_rat @ ( minus_minus_nat @ K3 @ I2 ) ) )
          @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K3 ) ) ) ) ).

% gbinomial_altdef_of_nat
thf(fact_6381_binomial__altdef__of__nat,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( semiri681578069525770553at_rat @ ( binomial @ N @ K ) )
        = ( groups73079841787564623at_rat
          @ ^ [I2: nat] : ( divide_divide_rat @ ( semiri681578069525770553at_rat @ ( minus_minus_nat @ N @ I2 ) ) @ ( semiri681578069525770553at_rat @ ( minus_minus_nat @ K @ I2 ) ) )
          @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) ) ) ) ).

% binomial_altdef_of_nat
thf(fact_6382_gbinomial__mult__fact_H,axiom,
    ! [A: rat,K: nat] :
      ( ( times_times_rat @ ( gbinomial_rat @ A @ K ) @ ( semiri773545260158071498ct_rat @ K ) )
      = ( groups73079841787564623at_rat
        @ ^ [I2: nat] : ( minus_minus_rat @ A @ ( semiri681578069525770553at_rat @ I2 ) )
        @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) ) ) ).

% gbinomial_mult_fact'
thf(fact_6383_gbinomial__mult__fact,axiom,
    ! [K: nat,A: rat] :
      ( ( times_times_rat @ ( semiri773545260158071498ct_rat @ K ) @ ( gbinomial_rat @ A @ K ) )
      = ( groups73079841787564623at_rat
        @ ^ [I2: nat] : ( minus_minus_rat @ A @ ( semiri681578069525770553at_rat @ I2 ) )
        @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) ) ) ).

% gbinomial_mult_fact
thf(fact_6384_gbinomial__prod__rev,axiom,
    ( gbinom8545251970709558553nteger
    = ( ^ [A4: code_integer,K3: nat] :
          ( divide6298287555418463151nteger
          @ ( groups3455450783089532116nteger
            @ ^ [I2: nat] : ( minus_8373710615458151222nteger @ A4 @ ( semiri4939895301339042750nteger @ I2 ) )
            @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K3 ) )
          @ ( semiri3624122377584611663nteger @ K3 ) ) ) ) ).

% gbinomial_prod_rev
thf(fact_6385_gbinomial__prod__rev,axiom,
    ( gbinomial_rat
    = ( ^ [A4: rat,K3: nat] :
          ( divide_divide_rat
          @ ( groups73079841787564623at_rat
            @ ^ [I2: nat] : ( minus_minus_rat @ A4 @ ( semiri681578069525770553at_rat @ I2 ) )
            @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K3 ) )
          @ ( semiri773545260158071498ct_rat @ K3 ) ) ) ) ).

% gbinomial_prod_rev
thf(fact_6386_gbinomial__prod__rev,axiom,
    ( gbinom7368847122466276068atural
    = ( ^ [A4: code_natural,K3: nat] :
          ( divide5121882707175180666atural
          @ ( groups2279045934846249631atural
            @ ^ [I2: nat] : ( minus_7197305767214868737atural @ A4 @ ( semiri3763490453095760265atural @ I2 ) )
            @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K3 ) )
          @ ( semiri2447717529341329178atural @ K3 ) ) ) ) ).

% gbinomial_prod_rev
thf(fact_6387_gbinomial__prod__rev,axiom,
    ( gbinomial_nat
    = ( ^ [A4: nat,K3: nat] :
          ( divide_divide_nat
          @ ( groups708209901874060359at_nat
            @ ^ [I2: nat] : ( minus_minus_nat @ A4 @ ( semiri1316708129612266289at_nat @ I2 ) )
            @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K3 ) )
          @ ( semiri1408675320244567234ct_nat @ K3 ) ) ) ) ).

% gbinomial_prod_rev
thf(fact_6388_gbinomial__prod__rev,axiom,
    ( gbinomial_int
    = ( ^ [A4: int,K3: nat] :
          ( divide_divide_int
          @ ( groups705719431365010083at_int
            @ ^ [I2: nat] : ( minus_minus_int @ A4 @ ( semiri1314217659103216013at_int @ I2 ) )
            @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K3 ) )
          @ ( semiri1406184849735516958ct_int @ K3 ) ) ) ) ).

% gbinomial_prod_rev
thf(fact_6389_sum__power2,axiom,
    ! [K: nat] :
      ( ( groups3542108847815614940at_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) )
      = ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K ) @ one_one_nat ) ) ).

% sum_power2
thf(fact_6390_prod__decode__aux_Opelims,axiom,
    ! [X: nat,Xa: nat,Y3: product_prod_nat_nat] :
      ( ( ( nat_prod_decode_aux @ X @ Xa )
        = Y3 )
     => ( ( accp_P4275260045618599050at_nat @ nat_pr5047031295181774490ux_rel @ ( product_Pair_nat_nat @ X @ Xa ) )
       => ~ ( ( ( ( ord_less_eq_nat @ Xa @ X )
               => ( Y3
                  = ( product_Pair_nat_nat @ Xa @ ( minus_minus_nat @ X @ Xa ) ) ) )
              & ( ~ ( ord_less_eq_nat @ Xa @ X )
               => ( Y3
                  = ( nat_prod_decode_aux @ ( suc @ X ) @ ( minus_minus_nat @ Xa @ ( suc @ X ) ) ) ) ) )
           => ~ ( accp_P4275260045618599050at_nat @ nat_pr5047031295181774490ux_rel @ ( product_Pair_nat_nat @ X @ Xa ) ) ) ) ) ).

% prod_decode_aux.pelims
thf(fact_6391_sum__zero__power_H,axiom,
    ! [A3: set_nat,C: nat > rat,D: nat > rat] :
      ( ( ( ( finite_finite_nat @ A3 )
          & ( member_nat @ zero_zero_nat @ A3 ) )
       => ( ( groups2906978787729119204at_rat
            @ ^ [I2: nat] : ( divide_divide_rat @ ( times_times_rat @ ( C @ I2 ) @ ( power_power_rat @ zero_zero_rat @ I2 ) ) @ ( D @ I2 ) )
            @ A3 )
          = ( divide_divide_rat @ ( C @ zero_zero_nat ) @ ( D @ zero_zero_nat ) ) ) )
      & ( ~ ( ( finite_finite_nat @ A3 )
            & ( member_nat @ zero_zero_nat @ A3 ) )
       => ( ( groups2906978787729119204at_rat
            @ ^ [I2: nat] : ( divide_divide_rat @ ( times_times_rat @ ( C @ I2 ) @ ( power_power_rat @ zero_zero_rat @ I2 ) ) @ ( D @ I2 ) )
            @ A3 )
          = zero_zero_rat ) ) ) ).

% sum_zero_power'
thf(fact_6392_and__num_Osimps_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_un7362597486090784418nd_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( case_o6005452278849405969um_num @ ( some_num @ one )
        @ ^ [N7: num] : ( some_num @ ( bit1 @ N7 ) )
        @ ( bit_un7362597486090784418nd_num @ M @ N ) ) ) ).

% and_num.simps(9)
thf(fact_6393_or__numerals_I4_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se9127793120404214118atural @ ( numera5444537566228673987atural @ ( bit0 @ X ) ) @ ( numera5444537566228673987atural @ ( bit1 @ Y3 ) ) )
      = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se9127793120404214118atural @ ( numera5444537566228673987atural @ X ) @ ( numera5444537566228673987atural @ Y3 ) ) ) ) ) ).

% or_numerals(4)
thf(fact_6394_or__numerals_I4_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit0 @ X ) ) @ ( numeral_numeral_int @ ( bit1 @ Y3 ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ X ) @ ( numeral_numeral_int @ Y3 ) ) ) ) ) ).

% or_numerals(4)
thf(fact_6395_or__numerals_I4_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se1080825931792720795nteger @ ( numera6620942414471956472nteger @ ( bit0 @ X ) ) @ ( numera6620942414471956472nteger @ ( bit1 @ Y3 ) ) )
      = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se1080825931792720795nteger @ ( numera6620942414471956472nteger @ X ) @ ( numera6620942414471956472nteger @ Y3 ) ) ) ) ) ).

% or_numerals(4)
thf(fact_6396_or__numerals_I4_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) )
      = ( plus_plus_nat @ one_one_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ X ) @ ( numeral_numeral_nat @ Y3 ) ) ) ) ) ).

% or_numerals(4)
thf(fact_6397_or__numerals_I6_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se9127793120404214118atural @ ( numera5444537566228673987atural @ ( bit1 @ X ) ) @ ( numera5444537566228673987atural @ ( bit0 @ Y3 ) ) )
      = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se9127793120404214118atural @ ( numera5444537566228673987atural @ X ) @ ( numera5444537566228673987atural @ Y3 ) ) ) ) ) ).

% or_numerals(6)
thf(fact_6398_or__numerals_I6_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit1 @ X ) ) @ ( numeral_numeral_int @ ( bit0 @ Y3 ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ X ) @ ( numeral_numeral_int @ Y3 ) ) ) ) ) ).

% or_numerals(6)
thf(fact_6399_or__numerals_I6_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se1080825931792720795nteger @ ( numera6620942414471956472nteger @ ( bit1 @ X ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ Y3 ) ) )
      = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se1080825931792720795nteger @ ( numera6620942414471956472nteger @ X ) @ ( numera6620942414471956472nteger @ Y3 ) ) ) ) ) ).

% or_numerals(6)
thf(fact_6400_or__numerals_I6_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ ( numeral_numeral_nat @ ( bit0 @ Y3 ) ) )
      = ( plus_plus_nat @ one_one_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ X ) @ ( numeral_numeral_nat @ Y3 ) ) ) ) ) ).

% or_numerals(6)
thf(fact_6401_or__numerals_I7_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se9127793120404214118atural @ ( numera5444537566228673987atural @ ( bit1 @ X ) ) @ ( numera5444537566228673987atural @ ( bit1 @ Y3 ) ) )
      = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se9127793120404214118atural @ ( numera5444537566228673987atural @ X ) @ ( numera5444537566228673987atural @ Y3 ) ) ) ) ) ).

% or_numerals(7)
thf(fact_6402_or__numerals_I7_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit1 @ X ) ) @ ( numeral_numeral_int @ ( bit1 @ Y3 ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ X ) @ ( numeral_numeral_int @ Y3 ) ) ) ) ) ).

% or_numerals(7)
thf(fact_6403_or__numerals_I7_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se1080825931792720795nteger @ ( numera6620942414471956472nteger @ ( bit1 @ X ) ) @ ( numera6620942414471956472nteger @ ( bit1 @ Y3 ) ) )
      = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se1080825931792720795nteger @ ( numera6620942414471956472nteger @ X ) @ ( numera6620942414471956472nteger @ Y3 ) ) ) ) ) ).

% or_numerals(7)
thf(fact_6404_or__numerals_I7_J,axiom,
    ! [X: num,Y3: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) )
      = ( plus_plus_nat @ one_one_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ X ) @ ( numeral_numeral_nat @ Y3 ) ) ) ) ) ).

% or_numerals(7)
thf(fact_6405_gcd__0__left__nat,axiom,
    ! [X: nat] :
      ( ( gcd_gcd_nat @ zero_zero_nat @ X )
      = X ) ).

% gcd_0_left_nat
thf(fact_6406_gcd__0__nat,axiom,
    ! [X: nat] :
      ( ( gcd_gcd_nat @ X @ zero_zero_nat )
      = X ) ).

% gcd_0_nat
thf(fact_6407_gcd__nat_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( gcd_gcd_nat @ A @ zero_zero_nat )
      = A ) ).

% gcd_nat.right_neutral
thf(fact_6408_gcd__nat_Oneutr__eq__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( zero_zero_nat
        = ( gcd_gcd_nat @ A @ B ) )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% gcd_nat.neutr_eq_iff
thf(fact_6409_gcd__nat_Oleft__neutral,axiom,
    ! [A: nat] :
      ( ( gcd_gcd_nat @ zero_zero_nat @ A )
      = A ) ).

% gcd_nat.left_neutral
thf(fact_6410_gcd__nat_Oeq__neutr__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( gcd_gcd_nat @ A @ B )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% gcd_nat.eq_neutr_iff
thf(fact_6411_gcd__nat_Oabsorb1,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( gcd_gcd_nat @ A @ B )
        = A ) ) ).

% gcd_nat.absorb1
thf(fact_6412_gcd__nat_Oabsorb2,axiom,
    ! [B: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ A )
     => ( ( gcd_gcd_nat @ A @ B )
        = B ) ) ).

% gcd_nat.absorb2
thf(fact_6413_gcd__nat_Obounded__iff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) )
      = ( ( dvd_dvd_nat @ A @ B )
        & ( dvd_dvd_nat @ A @ C ) ) ) ).

% gcd_nat.bounded_iff
thf(fact_6414_gcd__proj1__if__dvd__nat,axiom,
    ! [X: nat,Y3: nat] :
      ( ( dvd_dvd_nat @ X @ Y3 )
     => ( ( gcd_gcd_nat @ X @ Y3 )
        = X ) ) ).

% gcd_proj1_if_dvd_nat
thf(fact_6415_gcd__proj2__if__dvd__nat,axiom,
    ! [Y3: nat,X: nat] :
      ( ( dvd_dvd_nat @ Y3 @ X )
     => ( ( gcd_gcd_nat @ X @ Y3 )
        = Y3 ) ) ).

% gcd_proj2_if_dvd_nat
thf(fact_6416_gcd__1__nat,axiom,
    ! [M: nat] :
      ( ( gcd_gcd_nat @ M @ one_one_nat )
      = one_one_nat ) ).

% gcd_1_nat
thf(fact_6417_gcd__Suc__0,axiom,
    ! [M: nat] :
      ( ( gcd_gcd_nat @ M @ ( suc @ zero_zero_nat ) )
      = ( suc @ zero_zero_nat ) ) ).

% gcd_Suc_0
thf(fact_6418_gcd__pos__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( gcd_gcd_nat @ M @ N ) )
      = ( ( M != zero_zero_nat )
        | ( N != zero_zero_nat ) ) ) ).

% gcd_pos_nat
thf(fact_6419_or_Oleft__neutral,axiom,
    ! [A: int] :
      ( ( bit_se1409905431419307370or_int @ zero_zero_int @ A )
      = A ) ).

% or.left_neutral
thf(fact_6420_or_Oleft__neutral,axiom,
    ! [A: code_integer] :
      ( ( bit_se1080825931792720795nteger @ zero_z3403309356797280102nteger @ A )
      = A ) ).

% or.left_neutral
thf(fact_6421_or_Oleft__neutral,axiom,
    ! [A: code_natural] :
      ( ( bit_se9127793120404214118atural @ zero_z2226904508553997617atural @ A )
      = A ) ).

% or.left_neutral
thf(fact_6422_or_Oleft__neutral,axiom,
    ! [A: nat] :
      ( ( bit_se1412395901928357646or_nat @ zero_zero_nat @ A )
      = A ) ).

% or.left_neutral
thf(fact_6423_or_Oright__neutral,axiom,
    ! [A: int] :
      ( ( bit_se1409905431419307370or_int @ A @ zero_zero_int )
      = A ) ).

% or.right_neutral
thf(fact_6424_or_Oright__neutral,axiom,
    ! [A: code_integer] :
      ( ( bit_se1080825931792720795nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% or.right_neutral
thf(fact_6425_or_Oright__neutral,axiom,
    ! [A: code_natural] :
      ( ( bit_se9127793120404214118atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% or.right_neutral
thf(fact_6426_or_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( bit_se1412395901928357646or_nat @ A @ zero_zero_nat )
      = A ) ).

% or.right_neutral
thf(fact_6427_gcd__int__int__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( gcd_gcd_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri1314217659103216013at_int @ ( gcd_gcd_nat @ M @ N ) ) ) ).

% gcd_int_int_eq
thf(fact_6428_sum__eq__0__iff,axiom,
    ! [F4: set_int,F: int > nat] :
      ( ( finite_finite_int @ F4 )
     => ( ( ( groups4541462559716669496nt_nat @ F @ F4 )
          = zero_zero_nat )
        = ( ! [X4: int] :
              ( ( member_int @ X4 @ F4 )
             => ( ( F @ X4 )
                = zero_zero_nat ) ) ) ) ) ).

% sum_eq_0_iff
thf(fact_6429_sum__eq__0__iff,axiom,
    ! [F4: set_Pr1261947904930325089at_nat,F: product_prod_nat_nat > nat] :
      ( ( finite6177210948735845034at_nat @ F4 )
     => ( ( ( groups977919841031483927at_nat @ F @ F4 )
          = zero_zero_nat )
        = ( ! [X4: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ X4 @ F4 )
             => ( ( F @ X4 )
                = zero_zero_nat ) ) ) ) ) ).

% sum_eq_0_iff
thf(fact_6430_sum__eq__0__iff,axiom,
    ! [F4: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ F4 )
     => ( ( ( groups3542108847815614940at_nat @ F @ F4 )
          = zero_zero_nat )
        = ( ! [X4: nat] :
              ( ( member_nat @ X4 @ F4 )
             => ( ( F @ X4 )
                = zero_zero_nat ) ) ) ) ) ).

% sum_eq_0_iff
thf(fact_6431_sum_Oinfinite,axiom,
    ! [A3: set_int,G: int > nat] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( groups4541462559716669496nt_nat @ G @ A3 )
        = zero_zero_nat ) ) ).

% sum.infinite
thf(fact_6432_sum_Oinfinite,axiom,
    ! [A3: set_nat,G: nat > int] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( groups3539618377306564664at_int @ G @ A3 )
        = zero_zero_int ) ) ).

% sum.infinite
thf(fact_6433_sum_Oinfinite,axiom,
    ! [A3: set_nat,G: nat > code_integer] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( groups7501900531339628137nteger @ G @ A3 )
        = zero_z3403309356797280102nteger ) ) ).

% sum.infinite
thf(fact_6434_sum_Oinfinite,axiom,
    ! [A3: set_int,G: int > code_integer] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( groups7873554091576472773nteger @ G @ A3 )
        = zero_z3403309356797280102nteger ) ) ).

% sum.infinite
thf(fact_6435_sum_Oinfinite,axiom,
    ! [A3: set_nat,G: nat > rat] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( groups2906978787729119204at_rat @ G @ A3 )
        = zero_zero_rat ) ) ).

% sum.infinite
thf(fact_6436_sum_Oinfinite,axiom,
    ! [A3: set_int,G: int > rat] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( groups3906332499630173760nt_rat @ G @ A3 )
        = zero_zero_rat ) ) ).

% sum.infinite
thf(fact_6437_sum_Oinfinite,axiom,
    ! [A3: set_nat,G: nat > code_natural] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( groups6325495683096345652atural @ G @ A3 )
        = zero_z2226904508553997617atural ) ) ).

% sum.infinite
thf(fact_6438_sum_Oinfinite,axiom,
    ! [A3: set_int,G: int > code_natural] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( groups6697149243333190288atural @ G @ A3 )
        = zero_z2226904508553997617atural ) ) ).

% sum.infinite
thf(fact_6439_sum_Oinfinite,axiom,
    ! [A3: set_nat,G: nat > nat] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( groups3542108847815614940at_nat @ G @ A3 )
        = zero_zero_nat ) ) ).

% sum.infinite
thf(fact_6440_sum_Oinfinite,axiom,
    ! [A3: set_int,G: int > int] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( groups4538972089207619220nt_int @ G @ A3 )
        = zero_zero_int ) ) ).

% sum.infinite
thf(fact_6441_prod__zero__iff,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( groups1707563613775114915nt_nat @ F @ A3 )
          = zero_zero_nat )
        = ( ? [X4: int] :
              ( ( member_int @ X4 @ A3 )
              & ( ( F @ X4 )
                = zero_zero_nat ) ) ) ) ) ).

% prod_zero_iff
thf(fact_6442_prod__zero__iff,axiom,
    ! [A3: set_nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( groups3455450783089532116nteger @ F @ A3 )
          = zero_z3403309356797280102nteger )
        = ( ? [X4: nat] :
              ( ( member_nat @ X4 @ A3 )
              & ( ( F @ X4 )
                = zero_z3403309356797280102nteger ) ) ) ) ) ).

% prod_zero_iff
thf(fact_6443_prod__zero__iff,axiom,
    ! [A3: set_int,F: int > code_integer] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( groups3827104343326376752nteger @ F @ A3 )
          = zero_z3403309356797280102nteger )
        = ( ? [X4: int] :
              ( ( member_int @ X4 @ A3 )
              & ( ( F @ X4 )
                = zero_z3403309356797280102nteger ) ) ) ) ) ).

% prod_zero_iff
thf(fact_6444_prod__zero__iff,axiom,
    ! [A3: set_nat,F: nat > rat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( groups73079841787564623at_rat @ F @ A3 )
          = zero_zero_rat )
        = ( ? [X4: nat] :
              ( ( member_nat @ X4 @ A3 )
              & ( ( F @ X4 )
                = zero_zero_rat ) ) ) ) ) ).

% prod_zero_iff
thf(fact_6445_prod__zero__iff,axiom,
    ! [A3: set_int,F: int > rat] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( groups1072433553688619179nt_rat @ F @ A3 )
          = zero_zero_rat )
        = ( ? [X4: int] :
              ( ( member_int @ X4 @ A3 )
              & ( ( F @ X4 )
                = zero_zero_rat ) ) ) ) ) ).

% prod_zero_iff
thf(fact_6446_prod__zero__iff,axiom,
    ! [A3: set_nat,F: nat > code_natural] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( groups2279045934846249631atural @ F @ A3 )
          = zero_z2226904508553997617atural )
        = ( ? [X4: nat] :
              ( ( member_nat @ X4 @ A3 )
              & ( ( F @ X4 )
                = zero_z2226904508553997617atural ) ) ) ) ) ).

% prod_zero_iff
thf(fact_6447_prod__zero__iff,axiom,
    ! [A3: set_int,F: int > code_natural] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( groups2650699495083094267atural @ F @ A3 )
          = zero_z2226904508553997617atural )
        = ( ? [X4: int] :
              ( ( member_int @ X4 @ A3 )
              & ( ( F @ X4 )
                = zero_z2226904508553997617atural ) ) ) ) ) ).

% prod_zero_iff
thf(fact_6448_prod__zero__iff,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( groups708209901874060359at_nat @ F @ A3 )
          = zero_zero_nat )
        = ( ? [X4: nat] :
              ( ( member_nat @ X4 @ A3 )
              & ( ( F @ X4 )
                = zero_zero_nat ) ) ) ) ) ).

% prod_zero_iff
thf(fact_6449_prod__zero__iff,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( groups705719431365010083at_int @ F @ A3 )
          = zero_zero_int )
        = ( ? [X4: nat] :
              ( ( member_nat @ X4 @ A3 )
              & ( ( F @ X4 )
                = zero_zero_int ) ) ) ) ) ).

% prod_zero_iff
thf(fact_6450_prod__zero__iff,axiom,
    ! [A3: set_int,F: int > int] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( groups1705073143266064639nt_int @ F @ A3 )
          = zero_zero_int )
        = ( ? [X4: int] :
              ( ( member_int @ X4 @ A3 )
              & ( ( F @ X4 )
                = zero_zero_int ) ) ) ) ) ).

% prod_zero_iff
thf(fact_6451_prod_Oinfinite,axiom,
    ! [A3: set_int,G: int > nat] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( groups1707563613775114915nt_nat @ G @ A3 )
        = one_one_nat ) ) ).

% prod.infinite
thf(fact_6452_prod_Oinfinite,axiom,
    ! [A3: set_nat,G: nat > code_integer] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( groups3455450783089532116nteger @ G @ A3 )
        = one_one_Code_integer ) ) ).

% prod.infinite
thf(fact_6453_prod_Oinfinite,axiom,
    ! [A3: set_int,G: int > code_integer] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( groups3827104343326376752nteger @ G @ A3 )
        = one_one_Code_integer ) ) ).

% prod.infinite
thf(fact_6454_prod_Oinfinite,axiom,
    ! [A3: set_nat,G: nat > rat] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( groups73079841787564623at_rat @ G @ A3 )
        = one_one_rat ) ) ).

% prod.infinite
thf(fact_6455_prod_Oinfinite,axiom,
    ! [A3: set_int,G: int > rat] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( groups1072433553688619179nt_rat @ G @ A3 )
        = one_one_rat ) ) ).

% prod.infinite
thf(fact_6456_prod_Oinfinite,axiom,
    ! [A3: set_nat,G: nat > code_natural] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( groups2279045934846249631atural @ G @ A3 )
        = one_one_Code_natural ) ) ).

% prod.infinite
thf(fact_6457_prod_Oinfinite,axiom,
    ! [A3: set_int,G: int > code_natural] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( groups2650699495083094267atural @ G @ A3 )
        = one_one_Code_natural ) ) ).

% prod.infinite
thf(fact_6458_prod_Oinfinite,axiom,
    ! [A3: set_nat,G: nat > nat] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( groups708209901874060359at_nat @ G @ A3 )
        = one_one_nat ) ) ).

% prod.infinite
thf(fact_6459_prod_Oinfinite,axiom,
    ! [A3: set_nat,G: nat > int] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( groups705719431365010083at_int @ G @ A3 )
        = one_one_int ) ) ).

% prod.infinite
thf(fact_6460_prod_Oinfinite,axiom,
    ! [A3: set_int,G: int > int] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( groups1705073143266064639nt_int @ G @ A3 )
        = one_one_int ) ) ).

% prod.infinite
thf(fact_6461_bit_Odisj__one__right,axiom,
    ! [X: int] :
      ( ( bit_se1409905431419307370or_int @ X @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ one_one_int ) ) ).

% bit.disj_one_right
thf(fact_6462_bit_Odisj__one__right,axiom,
    ! [X: code_integer] :
      ( ( bit_se1080825931792720795nteger @ X @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% bit.disj_one_right
thf(fact_6463_bit_Odisj__one__left,axiom,
    ! [X: int] :
      ( ( bit_se1409905431419307370or_int @ ( uminus_uminus_int @ one_one_int ) @ X )
      = ( uminus_uminus_int @ one_one_int ) ) ).

% bit.disj_one_left
thf(fact_6464_bit_Odisj__one__left,axiom,
    ! [X: code_integer] :
      ( ( bit_se1080825931792720795nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ X )
      = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% bit.disj_one_left
thf(fact_6465_sum_Odelta_H,axiom,
    ! [S3: set_int,A: int,B: int > nat] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups4541462559716669496nt_nat
              @ ^ [K3: int] : ( if_nat @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_nat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups4541462559716669496nt_nat
              @ ^ [K3: int] : ( if_nat @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_nat )
              @ S3 )
            = zero_zero_nat ) ) ) ) ).

% sum.delta'
thf(fact_6466_sum_Odelta_H,axiom,
    ! [S3: set_nat,A: nat,B: nat > int] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups3539618377306564664at_int
              @ ^ [K3: nat] : ( if_int @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_int )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups3539618377306564664at_int
              @ ^ [K3: nat] : ( if_int @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_int )
              @ S3 )
            = zero_zero_int ) ) ) ) ).

% sum.delta'
thf(fact_6467_sum_Odelta_H,axiom,
    ! [S3: set_nat,A: nat,B: nat > code_integer] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups7501900531339628137nteger
              @ ^ [K3: nat] : ( if_Code_integer @ ( A = K3 ) @ ( B @ K3 ) @ zero_z3403309356797280102nteger )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups7501900531339628137nteger
              @ ^ [K3: nat] : ( if_Code_integer @ ( A = K3 ) @ ( B @ K3 ) @ zero_z3403309356797280102nteger )
              @ S3 )
            = zero_z3403309356797280102nteger ) ) ) ) ).

% sum.delta'
thf(fact_6468_sum_Odelta_H,axiom,
    ! [S3: set_int,A: int,B: int > code_integer] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups7873554091576472773nteger
              @ ^ [K3: int] : ( if_Code_integer @ ( A = K3 ) @ ( B @ K3 ) @ zero_z3403309356797280102nteger )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups7873554091576472773nteger
              @ ^ [K3: int] : ( if_Code_integer @ ( A = K3 ) @ ( B @ K3 ) @ zero_z3403309356797280102nteger )
              @ S3 )
            = zero_z3403309356797280102nteger ) ) ) ) ).

% sum.delta'
thf(fact_6469_sum_Odelta_H,axiom,
    ! [S3: set_nat,A: nat,B: nat > rat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups2906978787729119204at_rat
              @ ^ [K3: nat] : ( if_rat @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_rat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups2906978787729119204at_rat
              @ ^ [K3: nat] : ( if_rat @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_rat )
              @ S3 )
            = zero_zero_rat ) ) ) ) ).

% sum.delta'
thf(fact_6470_sum_Odelta_H,axiom,
    ! [S3: set_int,A: int,B: int > rat] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups3906332499630173760nt_rat
              @ ^ [K3: int] : ( if_rat @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_rat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups3906332499630173760nt_rat
              @ ^ [K3: int] : ( if_rat @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_rat )
              @ S3 )
            = zero_zero_rat ) ) ) ) ).

% sum.delta'
thf(fact_6471_sum_Odelta_H,axiom,
    ! [S3: set_nat,A: nat,B: nat > code_natural] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups6325495683096345652atural
              @ ^ [K3: nat] : ( if_Code_natural @ ( A = K3 ) @ ( B @ K3 ) @ zero_z2226904508553997617atural )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups6325495683096345652atural
              @ ^ [K3: nat] : ( if_Code_natural @ ( A = K3 ) @ ( B @ K3 ) @ zero_z2226904508553997617atural )
              @ S3 )
            = zero_z2226904508553997617atural ) ) ) ) ).

% sum.delta'
thf(fact_6472_sum_Odelta_H,axiom,
    ! [S3: set_int,A: int,B: int > code_natural] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups6697149243333190288atural
              @ ^ [K3: int] : ( if_Code_natural @ ( A = K3 ) @ ( B @ K3 ) @ zero_z2226904508553997617atural )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups6697149243333190288atural
              @ ^ [K3: int] : ( if_Code_natural @ ( A = K3 ) @ ( B @ K3 ) @ zero_z2226904508553997617atural )
              @ S3 )
            = zero_z2226904508553997617atural ) ) ) ) ).

% sum.delta'
thf(fact_6473_sum_Odelta_H,axiom,
    ! [S3: set_nat,A: nat,B: nat > nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups3542108847815614940at_nat
              @ ^ [K3: nat] : ( if_nat @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_nat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups3542108847815614940at_nat
              @ ^ [K3: nat] : ( if_nat @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_nat )
              @ S3 )
            = zero_zero_nat ) ) ) ) ).

% sum.delta'
thf(fact_6474_sum_Odelta_H,axiom,
    ! [S3: set_int,A: int,B: int > int] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups4538972089207619220nt_int
              @ ^ [K3: int] : ( if_int @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_int )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups4538972089207619220nt_int
              @ ^ [K3: int] : ( if_int @ ( A = K3 ) @ ( B @ K3 ) @ zero_zero_int )
              @ S3 )
            = zero_zero_int ) ) ) ) ).

% sum.delta'
thf(fact_6475_sum_Odelta,axiom,
    ! [S3: set_int,A: int,B: int > nat] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups4541462559716669496nt_nat
              @ ^ [K3: int] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_nat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups4541462559716669496nt_nat
              @ ^ [K3: int] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_nat )
              @ S3 )
            = zero_zero_nat ) ) ) ) ).

% sum.delta
thf(fact_6476_sum_Odelta,axiom,
    ! [S3: set_nat,A: nat,B: nat > int] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups3539618377306564664at_int
              @ ^ [K3: nat] : ( if_int @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_int )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups3539618377306564664at_int
              @ ^ [K3: nat] : ( if_int @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_int )
              @ S3 )
            = zero_zero_int ) ) ) ) ).

% sum.delta
thf(fact_6477_sum_Odelta,axiom,
    ! [S3: set_nat,A: nat,B: nat > code_integer] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups7501900531339628137nteger
              @ ^ [K3: nat] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ zero_z3403309356797280102nteger )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups7501900531339628137nteger
              @ ^ [K3: nat] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ zero_z3403309356797280102nteger )
              @ S3 )
            = zero_z3403309356797280102nteger ) ) ) ) ).

% sum.delta
thf(fact_6478_sum_Odelta,axiom,
    ! [S3: set_int,A: int,B: int > code_integer] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups7873554091576472773nteger
              @ ^ [K3: int] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ zero_z3403309356797280102nteger )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups7873554091576472773nteger
              @ ^ [K3: int] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ zero_z3403309356797280102nteger )
              @ S3 )
            = zero_z3403309356797280102nteger ) ) ) ) ).

% sum.delta
thf(fact_6479_sum_Odelta,axiom,
    ! [S3: set_nat,A: nat,B: nat > rat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups2906978787729119204at_rat
              @ ^ [K3: nat] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_rat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups2906978787729119204at_rat
              @ ^ [K3: nat] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_rat )
              @ S3 )
            = zero_zero_rat ) ) ) ) ).

% sum.delta
thf(fact_6480_sum_Odelta,axiom,
    ! [S3: set_int,A: int,B: int > rat] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups3906332499630173760nt_rat
              @ ^ [K3: int] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_rat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups3906332499630173760nt_rat
              @ ^ [K3: int] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_rat )
              @ S3 )
            = zero_zero_rat ) ) ) ) ).

% sum.delta
thf(fact_6481_sum_Odelta,axiom,
    ! [S3: set_nat,A: nat,B: nat > code_natural] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups6325495683096345652atural
              @ ^ [K3: nat] : ( if_Code_natural @ ( K3 = A ) @ ( B @ K3 ) @ zero_z2226904508553997617atural )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups6325495683096345652atural
              @ ^ [K3: nat] : ( if_Code_natural @ ( K3 = A ) @ ( B @ K3 ) @ zero_z2226904508553997617atural )
              @ S3 )
            = zero_z2226904508553997617atural ) ) ) ) ).

% sum.delta
thf(fact_6482_sum_Odelta,axiom,
    ! [S3: set_int,A: int,B: int > code_natural] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups6697149243333190288atural
              @ ^ [K3: int] : ( if_Code_natural @ ( K3 = A ) @ ( B @ K3 ) @ zero_z2226904508553997617atural )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups6697149243333190288atural
              @ ^ [K3: int] : ( if_Code_natural @ ( K3 = A ) @ ( B @ K3 ) @ zero_z2226904508553997617atural )
              @ S3 )
            = zero_z2226904508553997617atural ) ) ) ) ).

% sum.delta
thf(fact_6483_sum_Odelta,axiom,
    ! [S3: set_nat,A: nat,B: nat > nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups3542108847815614940at_nat
              @ ^ [K3: nat] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_nat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups3542108847815614940at_nat
              @ ^ [K3: nat] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_nat )
              @ S3 )
            = zero_zero_nat ) ) ) ) ).

% sum.delta
thf(fact_6484_sum_Odelta,axiom,
    ! [S3: set_int,A: int,B: int > int] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups4538972089207619220nt_int
              @ ^ [K3: int] : ( if_int @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_int )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups4538972089207619220nt_int
              @ ^ [K3: int] : ( if_int @ ( K3 = A ) @ ( B @ K3 ) @ zero_zero_int )
              @ S3 )
            = zero_zero_int ) ) ) ) ).

% sum.delta
thf(fact_6485_prod__eq__1__iff,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( groups1707563613775114915nt_nat @ F @ A3 )
          = one_one_nat )
        = ( ! [X4: int] :
              ( ( member_int @ X4 @ A3 )
             => ( ( F @ X4 )
                = one_one_nat ) ) ) ) ) ).

% prod_eq_1_iff
thf(fact_6486_prod__eq__1__iff,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,F: product_prod_nat_nat > nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( ( ( groups4077766827762148844at_nat @ F @ A3 )
          = one_one_nat )
        = ( ! [X4: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ X4 @ A3 )
             => ( ( F @ X4 )
                = one_one_nat ) ) ) ) ) ).

% prod_eq_1_iff
thf(fact_6487_prod__eq__1__iff,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( groups708209901874060359at_nat @ F @ A3 )
          = one_one_nat )
        = ( ! [X4: nat] :
              ( ( member_nat @ X4 @ A3 )
             => ( ( F @ X4 )
                = one_one_nat ) ) ) ) ) ).

% prod_eq_1_iff
thf(fact_6488_prod_Odelta,axiom,
    ! [S3: set_int,A: int,B: int > nat] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups1707563613775114915nt_nat
              @ ^ [K3: int] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ one_one_nat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups1707563613775114915nt_nat
              @ ^ [K3: int] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ one_one_nat )
              @ S3 )
            = one_one_nat ) ) ) ) ).

% prod.delta
thf(fact_6489_prod_Odelta,axiom,
    ! [S3: set_nat,A: nat,B: nat > code_integer] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups3455450783089532116nteger
              @ ^ [K3: nat] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ one_one_Code_integer )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups3455450783089532116nteger
              @ ^ [K3: nat] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ one_one_Code_integer )
              @ S3 )
            = one_one_Code_integer ) ) ) ) ).

% prod.delta
thf(fact_6490_prod_Odelta,axiom,
    ! [S3: set_int,A: int,B: int > code_integer] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups3827104343326376752nteger
              @ ^ [K3: int] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ one_one_Code_integer )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups3827104343326376752nteger
              @ ^ [K3: int] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ one_one_Code_integer )
              @ S3 )
            = one_one_Code_integer ) ) ) ) ).

% prod.delta
thf(fact_6491_prod_Odelta,axiom,
    ! [S3: set_nat,A: nat,B: nat > rat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups73079841787564623at_rat
              @ ^ [K3: nat] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ one_one_rat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups73079841787564623at_rat
              @ ^ [K3: nat] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ one_one_rat )
              @ S3 )
            = one_one_rat ) ) ) ) ).

% prod.delta
thf(fact_6492_prod_Odelta,axiom,
    ! [S3: set_int,A: int,B: int > rat] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups1072433553688619179nt_rat
              @ ^ [K3: int] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ one_one_rat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups1072433553688619179nt_rat
              @ ^ [K3: int] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ one_one_rat )
              @ S3 )
            = one_one_rat ) ) ) ) ).

% prod.delta
thf(fact_6493_prod_Odelta,axiom,
    ! [S3: set_nat,A: nat,B: nat > code_natural] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups2279045934846249631atural
              @ ^ [K3: nat] : ( if_Code_natural @ ( K3 = A ) @ ( B @ K3 ) @ one_one_Code_natural )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups2279045934846249631atural
              @ ^ [K3: nat] : ( if_Code_natural @ ( K3 = A ) @ ( B @ K3 ) @ one_one_Code_natural )
              @ S3 )
            = one_one_Code_natural ) ) ) ) ).

% prod.delta
thf(fact_6494_prod_Odelta,axiom,
    ! [S3: set_int,A: int,B: int > code_natural] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups2650699495083094267atural
              @ ^ [K3: int] : ( if_Code_natural @ ( K3 = A ) @ ( B @ K3 ) @ one_one_Code_natural )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups2650699495083094267atural
              @ ^ [K3: int] : ( if_Code_natural @ ( K3 = A ) @ ( B @ K3 ) @ one_one_Code_natural )
              @ S3 )
            = one_one_Code_natural ) ) ) ) ).

% prod.delta
thf(fact_6495_prod_Odelta,axiom,
    ! [S3: set_nat,A: nat,B: nat > nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups708209901874060359at_nat
              @ ^ [K3: nat] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ one_one_nat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups708209901874060359at_nat
              @ ^ [K3: nat] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ one_one_nat )
              @ S3 )
            = one_one_nat ) ) ) ) ).

% prod.delta
thf(fact_6496_prod_Odelta,axiom,
    ! [S3: set_nat,A: nat,B: nat > int] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups705719431365010083at_int
              @ ^ [K3: nat] : ( if_int @ ( K3 = A ) @ ( B @ K3 ) @ one_one_int )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups705719431365010083at_int
              @ ^ [K3: nat] : ( if_int @ ( K3 = A ) @ ( B @ K3 ) @ one_one_int )
              @ S3 )
            = one_one_int ) ) ) ) ).

% prod.delta
thf(fact_6497_prod_Odelta,axiom,
    ! [S3: set_int,A: int,B: int > int] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups1705073143266064639nt_int
              @ ^ [K3: int] : ( if_int @ ( K3 = A ) @ ( B @ K3 ) @ one_one_int )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups1705073143266064639nt_int
              @ ^ [K3: int] : ( if_int @ ( K3 = A ) @ ( B @ K3 ) @ one_one_int )
              @ S3 )
            = one_one_int ) ) ) ) ).

% prod.delta
thf(fact_6498_prod_Odelta_H,axiom,
    ! [S3: set_int,A: int,B: int > nat] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups1707563613775114915nt_nat
              @ ^ [K3: int] : ( if_nat @ ( A = K3 ) @ ( B @ K3 ) @ one_one_nat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups1707563613775114915nt_nat
              @ ^ [K3: int] : ( if_nat @ ( A = K3 ) @ ( B @ K3 ) @ one_one_nat )
              @ S3 )
            = one_one_nat ) ) ) ) ).

% prod.delta'
thf(fact_6499_prod_Odelta_H,axiom,
    ! [S3: set_nat,A: nat,B: nat > code_integer] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups3455450783089532116nteger
              @ ^ [K3: nat] : ( if_Code_integer @ ( A = K3 ) @ ( B @ K3 ) @ one_one_Code_integer )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups3455450783089532116nteger
              @ ^ [K3: nat] : ( if_Code_integer @ ( A = K3 ) @ ( B @ K3 ) @ one_one_Code_integer )
              @ S3 )
            = one_one_Code_integer ) ) ) ) ).

% prod.delta'
thf(fact_6500_prod_Odelta_H,axiom,
    ! [S3: set_int,A: int,B: int > code_integer] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups3827104343326376752nteger
              @ ^ [K3: int] : ( if_Code_integer @ ( A = K3 ) @ ( B @ K3 ) @ one_one_Code_integer )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups3827104343326376752nteger
              @ ^ [K3: int] : ( if_Code_integer @ ( A = K3 ) @ ( B @ K3 ) @ one_one_Code_integer )
              @ S3 )
            = one_one_Code_integer ) ) ) ) ).

% prod.delta'
thf(fact_6501_prod_Odelta_H,axiom,
    ! [S3: set_nat,A: nat,B: nat > rat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups73079841787564623at_rat
              @ ^ [K3: nat] : ( if_rat @ ( A = K3 ) @ ( B @ K3 ) @ one_one_rat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups73079841787564623at_rat
              @ ^ [K3: nat] : ( if_rat @ ( A = K3 ) @ ( B @ K3 ) @ one_one_rat )
              @ S3 )
            = one_one_rat ) ) ) ) ).

% prod.delta'
thf(fact_6502_prod_Odelta_H,axiom,
    ! [S3: set_int,A: int,B: int > rat] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups1072433553688619179nt_rat
              @ ^ [K3: int] : ( if_rat @ ( A = K3 ) @ ( B @ K3 ) @ one_one_rat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups1072433553688619179nt_rat
              @ ^ [K3: int] : ( if_rat @ ( A = K3 ) @ ( B @ K3 ) @ one_one_rat )
              @ S3 )
            = one_one_rat ) ) ) ) ).

% prod.delta'
thf(fact_6503_prod_Odelta_H,axiom,
    ! [S3: set_nat,A: nat,B: nat > code_natural] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups2279045934846249631atural
              @ ^ [K3: nat] : ( if_Code_natural @ ( A = K3 ) @ ( B @ K3 ) @ one_one_Code_natural )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups2279045934846249631atural
              @ ^ [K3: nat] : ( if_Code_natural @ ( A = K3 ) @ ( B @ K3 ) @ one_one_Code_natural )
              @ S3 )
            = one_one_Code_natural ) ) ) ) ).

% prod.delta'
thf(fact_6504_prod_Odelta_H,axiom,
    ! [S3: set_int,A: int,B: int > code_natural] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups2650699495083094267atural
              @ ^ [K3: int] : ( if_Code_natural @ ( A = K3 ) @ ( B @ K3 ) @ one_one_Code_natural )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups2650699495083094267atural
              @ ^ [K3: int] : ( if_Code_natural @ ( A = K3 ) @ ( B @ K3 ) @ one_one_Code_natural )
              @ S3 )
            = one_one_Code_natural ) ) ) ) ).

% prod.delta'
thf(fact_6505_prod_Odelta_H,axiom,
    ! [S3: set_nat,A: nat,B: nat > nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups708209901874060359at_nat
              @ ^ [K3: nat] : ( if_nat @ ( A = K3 ) @ ( B @ K3 ) @ one_one_nat )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups708209901874060359at_nat
              @ ^ [K3: nat] : ( if_nat @ ( A = K3 ) @ ( B @ K3 ) @ one_one_nat )
              @ S3 )
            = one_one_nat ) ) ) ) ).

% prod.delta'
thf(fact_6506_prod_Odelta_H,axiom,
    ! [S3: set_nat,A: nat,B: nat > int] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups705719431365010083at_int
              @ ^ [K3: nat] : ( if_int @ ( A = K3 ) @ ( B @ K3 ) @ one_one_int )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups705719431365010083at_int
              @ ^ [K3: nat] : ( if_int @ ( A = K3 ) @ ( B @ K3 ) @ one_one_int )
              @ S3 )
            = one_one_int ) ) ) ) ).

% prod.delta'
thf(fact_6507_prod_Odelta_H,axiom,
    ! [S3: set_int,A: int,B: int > int] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups1705073143266064639nt_int
              @ ^ [K3: int] : ( if_int @ ( A = K3 ) @ ( B @ K3 ) @ one_one_int )
              @ S3 )
            = ( B @ A ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups1705073143266064639nt_int
              @ ^ [K3: int] : ( if_int @ ( A = K3 ) @ ( B @ K3 ) @ one_one_int )
              @ S3 )
            = one_one_int ) ) ) ) ).

% prod.delta'
thf(fact_6508_or__nat__numerals_I4_J,axiom,
    ! [X: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit1 @ X ) ) ) ).

% or_nat_numerals(4)
thf(fact_6509_or__nat__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se1412395901928357646or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) ) ).

% or_nat_numerals(2)
thf(fact_6510_or__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se9127793120404214118atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ ( bit1 @ Y3 ) ) )
      = ( numera5444537566228673987atural @ ( bit1 @ Y3 ) ) ) ).

% or_numerals(2)
thf(fact_6511_or__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ ( numeral_numeral_int @ ( bit1 @ Y3 ) ) )
      = ( numeral_numeral_int @ ( bit1 @ Y3 ) ) ) ).

% or_numerals(2)
thf(fact_6512_or__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se1080825931792720795nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ ( bit1 @ Y3 ) ) )
      = ( numera6620942414471956472nteger @ ( bit1 @ Y3 ) ) ) ).

% or_numerals(2)
thf(fact_6513_or__numerals_I2_J,axiom,
    ! [Y3: num] :
      ( ( bit_se1412395901928357646or_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) ) ).

% or_numerals(2)
thf(fact_6514_or__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se9127793120404214118atural @ ( numera5444537566228673987atural @ ( bit1 @ X ) ) @ one_one_Code_natural )
      = ( numera5444537566228673987atural @ ( bit1 @ X ) ) ) ).

% or_numerals(8)
thf(fact_6515_or__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit1 @ X ) ) @ one_one_int )
      = ( numeral_numeral_int @ ( bit1 @ X ) ) ) ).

% or_numerals(8)
thf(fact_6516_or__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se1080825931792720795nteger @ ( numera6620942414471956472nteger @ ( bit1 @ X ) ) @ one_one_Code_integer )
      = ( numera6620942414471956472nteger @ ( bit1 @ X ) ) ) ).

% or_numerals(8)
thf(fact_6517_or__numerals_I8_J,axiom,
    ! [X: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit1 @ X ) ) @ one_one_nat )
      = ( numeral_numeral_nat @ ( bit1 @ X ) ) ) ).

% or_numerals(8)
thf(fact_6518_prod__pos__nat__iff,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( ord_less_nat @ zero_zero_nat @ ( groups1707563613775114915nt_nat @ F @ A3 ) )
        = ( ! [X4: int] :
              ( ( member_int @ X4 @ A3 )
             => ( ord_less_nat @ zero_zero_nat @ ( F @ X4 ) ) ) ) ) ) ).

% prod_pos_nat_iff
thf(fact_6519_prod__pos__nat__iff,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,F: product_prod_nat_nat > nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( ( ord_less_nat @ zero_zero_nat @ ( groups4077766827762148844at_nat @ F @ A3 ) )
        = ( ! [X4: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ X4 @ A3 )
             => ( ord_less_nat @ zero_zero_nat @ ( F @ X4 ) ) ) ) ) ) ).

% prod_pos_nat_iff
thf(fact_6520_prod__pos__nat__iff,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ord_less_nat @ zero_zero_nat @ ( groups708209901874060359at_nat @ F @ A3 ) )
        = ( ! [X4: nat] :
              ( ( member_nat @ X4 @ A3 )
             => ( ord_less_nat @ zero_zero_nat @ ( F @ X4 ) ) ) ) ) ) ).

% prod_pos_nat_iff
thf(fact_6521_gcd__nat__abs__left__eq,axiom,
    ! [K: int,N: nat] :
      ( ( gcd_gcd_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ N )
      = ( nat2 @ ( gcd_gcd_int @ K @ ( semiri1314217659103216013at_int @ N ) ) ) ) ).

% gcd_nat_abs_left_eq
thf(fact_6522_gcd__nat__abs__right__eq,axiom,
    ! [N: nat,K: int] :
      ( ( gcd_gcd_nat @ N @ ( nat2 @ ( abs_abs_int @ K ) ) )
      = ( nat2 @ ( gcd_gcd_int @ ( semiri1314217659103216013at_int @ N ) @ K ) ) ) ).

% gcd_nat_abs_right_eq
thf(fact_6523_or__nat__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se1412395901928357646or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit0 @ Y3 ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) ) ).

% or_nat_numerals(1)
thf(fact_6524_or__nat__numerals_I3_J,axiom,
    ! [X: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit1 @ X ) ) ) ).

% or_nat_numerals(3)
thf(fact_6525_or__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se9127793120404214118atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ Y3 ) ) )
      = ( numera5444537566228673987atural @ ( bit1 @ Y3 ) ) ) ).

% or_numerals(1)
thf(fact_6526_or__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ ( numeral_numeral_int @ ( bit0 @ Y3 ) ) )
      = ( numeral_numeral_int @ ( bit1 @ Y3 ) ) ) ).

% or_numerals(1)
thf(fact_6527_or__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se1080825931792720795nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ Y3 ) ) )
      = ( numera6620942414471956472nteger @ ( bit1 @ Y3 ) ) ) ).

% or_numerals(1)
thf(fact_6528_or__numerals_I1_J,axiom,
    ! [Y3: num] :
      ( ( bit_se1412395901928357646or_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit0 @ Y3 ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y3 ) ) ) ).

% or_numerals(1)
thf(fact_6529_or__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se9127793120404214118atural @ ( numera5444537566228673987atural @ ( bit0 @ X ) ) @ one_one_Code_natural )
      = ( numera5444537566228673987atural @ ( bit1 @ X ) ) ) ).

% or_numerals(5)
thf(fact_6530_or__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit0 @ X ) ) @ one_one_int )
      = ( numeral_numeral_int @ ( bit1 @ X ) ) ) ).

% or_numerals(5)
thf(fact_6531_or__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se1080825931792720795nteger @ ( numera6620942414471956472nteger @ ( bit0 @ X ) ) @ one_one_Code_integer )
      = ( numera6620942414471956472nteger @ ( bit1 @ X ) ) ) ).

% or_numerals(5)
thf(fact_6532_or__numerals_I5_J,axiom,
    ! [X: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit0 @ X ) ) @ one_one_nat )
      = ( numeral_numeral_nat @ ( bit1 @ X ) ) ) ).

% or_numerals(5)
thf(fact_6533_sum__zero__power,axiom,
    ! [A3: set_nat,C: nat > rat] :
      ( ( ( ( finite_finite_nat @ A3 )
          & ( member_nat @ zero_zero_nat @ A3 ) )
       => ( ( groups2906978787729119204at_rat
            @ ^ [I2: nat] : ( times_times_rat @ ( C @ I2 ) @ ( power_power_rat @ zero_zero_rat @ I2 ) )
            @ A3 )
          = ( C @ zero_zero_nat ) ) )
      & ( ~ ( ( finite_finite_nat @ A3 )
            & ( member_nat @ zero_zero_nat @ A3 ) )
       => ( ( groups2906978787729119204at_rat
            @ ^ [I2: nat] : ( times_times_rat @ ( C @ I2 ) @ ( power_power_rat @ zero_zero_rat @ I2 ) )
            @ A3 )
          = zero_zero_rat ) ) ) ).

% sum_zero_power
thf(fact_6534_or__eq__0__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( bit_se1409905431419307370or_int @ A @ B )
        = zero_zero_int )
      = ( ( A = zero_zero_int )
        & ( B = zero_zero_int ) ) ) ).

% or_eq_0_iff
thf(fact_6535_or__eq__0__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( bit_se1080825931792720795nteger @ A @ B )
        = zero_z3403309356797280102nteger )
      = ( ( A = zero_z3403309356797280102nteger )
        & ( B = zero_z3403309356797280102nteger ) ) ) ).

% or_eq_0_iff
thf(fact_6536_or__eq__0__iff,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( bit_se9127793120404214118atural @ A @ B )
        = zero_z2226904508553997617atural )
      = ( ( A = zero_z2226904508553997617atural )
        & ( B = zero_z2226904508553997617atural ) ) ) ).

% or_eq_0_iff
thf(fact_6537_or__eq__0__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( bit_se1412395901928357646or_nat @ A @ B )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% or_eq_0_iff
thf(fact_6538_bit_Odisj__zero__right,axiom,
    ! [X: int] :
      ( ( bit_se1409905431419307370or_int @ X @ zero_zero_int )
      = X ) ).

% bit.disj_zero_right
thf(fact_6539_bit_Odisj__zero__right,axiom,
    ! [X: code_integer] :
      ( ( bit_se1080825931792720795nteger @ X @ zero_z3403309356797280102nteger )
      = X ) ).

% bit.disj_zero_right
thf(fact_6540_gcd__mult__distrib__nat,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( gcd_gcd_nat @ M @ N ) )
      = ( gcd_gcd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% gcd_mult_distrib_nat
thf(fact_6541_gcd__nat_Omono,axiom,
    ! [A: nat,C: nat,B: nat,D: nat] :
      ( ( dvd_dvd_nat @ A @ C )
     => ( ( dvd_dvd_nat @ B @ D )
       => ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ ( gcd_gcd_nat @ C @ D ) ) ) ) ).

% gcd_nat.mono
thf(fact_6542_gcd__nat_OorderE,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( A
        = ( gcd_gcd_nat @ A @ B ) ) ) ).

% gcd_nat.orderE
thf(fact_6543_gcd__nat_OorderI,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( gcd_gcd_nat @ A @ B ) )
     => ( dvd_dvd_nat @ A @ B ) ) ).

% gcd_nat.orderI
thf(fact_6544_gcd__nat_Oabsorb3,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ( ( gcd_gcd_nat @ A @ B )
        = A ) ) ).

% gcd_nat.absorb3
thf(fact_6545_gcd__nat_Oabsorb4,axiom,
    ! [B: nat,A: nat] :
      ( ( ( dvd_dvd_nat @ B @ A )
        & ( B != A ) )
     => ( ( gcd_gcd_nat @ A @ B )
        = B ) ) ).

% gcd_nat.absorb4
thf(fact_6546_gcd__nat_OboundedE,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) )
     => ~ ( ( dvd_dvd_nat @ A @ B )
         => ~ ( dvd_dvd_nat @ A @ C ) ) ) ).

% gcd_nat.boundedE
thf(fact_6547_gcd__nat_OboundedI,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ A @ C )
       => ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) ) ) ) ).

% gcd_nat.boundedI
thf(fact_6548_gcd__nat_Oorder__iff,axiom,
    ( dvd_dvd_nat
    = ( ^ [A4: nat,B4: nat] :
          ( A4
          = ( gcd_gcd_nat @ A4 @ B4 ) ) ) ) ).

% gcd_nat.order_iff
thf(fact_6549_gcd__nat_Ocobounded1,axiom,
    ! [A: nat,B: nat] : ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ A ) ).

% gcd_nat.cobounded1
thf(fact_6550_gcd__nat_Ocobounded2,axiom,
    ! [A: nat,B: nat] : ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ B ) ).

% gcd_nat.cobounded2
thf(fact_6551_gcd__nat_Oabsorb__iff1,axiom,
    ( dvd_dvd_nat
    = ( ^ [A4: nat,B4: nat] :
          ( ( gcd_gcd_nat @ A4 @ B4 )
          = A4 ) ) ) ).

% gcd_nat.absorb_iff1
thf(fact_6552_gcd__nat_Oabsorb__iff2,axiom,
    ( dvd_dvd_nat
    = ( ^ [B4: nat,A4: nat] :
          ( ( gcd_gcd_nat @ A4 @ B4 )
          = B4 ) ) ) ).

% gcd_nat.absorb_iff2
thf(fact_6553_gcd__nat_OcoboundedI1,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ C )
     => ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ C ) ) ).

% gcd_nat.coboundedI1
thf(fact_6554_gcd__nat_OcoboundedI2,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ C )
     => ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ C ) ) ).

% gcd_nat.coboundedI2
thf(fact_6555_gcd__nat_Ostrict__boundedE,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) )
        & ( A
         != ( gcd_gcd_nat @ B @ C ) ) )
     => ~ ( ( ( dvd_dvd_nat @ A @ B )
            & ( A != B ) )
         => ~ ( ( dvd_dvd_nat @ A @ C )
              & ( A != C ) ) ) ) ).

% gcd_nat.strict_boundedE
thf(fact_6556_gcd__nat_Ostrict__order__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
      = ( ( A
          = ( gcd_gcd_nat @ A @ B ) )
        & ( A != B ) ) ) ).

% gcd_nat.strict_order_iff
thf(fact_6557_gcd__nat_Ostrict__coboundedI1,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ C )
        & ( A != C ) )
     => ( ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ C )
        & ( ( gcd_gcd_nat @ A @ B )
         != C ) ) ) ).

% gcd_nat.strict_coboundedI1
thf(fact_6558_gcd__nat_Ostrict__coboundedI2,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( ( dvd_dvd_nat @ B @ C )
        & ( B != C ) )
     => ( ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ C )
        & ( ( gcd_gcd_nat @ A @ B )
         != C ) ) ) ).

% gcd_nat.strict_coboundedI2
thf(fact_6559_gcd__unique__nat,axiom,
    ! [D: nat,A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ D @ A )
        & ( dvd_dvd_nat @ D @ B )
        & ! [E3: nat] :
            ( ( ( dvd_dvd_nat @ E3 @ A )
              & ( dvd_dvd_nat @ E3 @ B ) )
           => ( dvd_dvd_nat @ E3 @ D ) ) )
      = ( D
        = ( gcd_gcd_nat @ A @ B ) ) ) ).

% gcd_unique_nat
thf(fact_6560_gcd__red__nat,axiom,
    ( gcd_gcd_nat
    = ( ^ [X4: nat,Y: nat] : ( gcd_gcd_nat @ Y @ ( modulo_modulo_nat @ X4 @ Y ) ) ) ) ).

% gcd_red_nat
thf(fact_6561_finite__M__bounded__by__nat,axiom,
    ! [P: nat > $o,I: nat] :
      ( finite_finite_nat
      @ ( collect_nat
        @ ^ [K3: nat] :
            ( ( P @ K3 )
            & ( ord_less_nat @ K3 @ I ) ) ) ) ).

% finite_M_bounded_by_nat
thf(fact_6562_finite__less__ub,axiom,
    ! [F: nat > nat,U: nat] :
      ( ! [N2: nat] : ( ord_less_eq_nat @ N2 @ ( F @ N2 ) )
     => ( finite_finite_nat
        @ ( collect_nat
          @ ^ [N5: nat] : ( ord_less_eq_nat @ ( F @ N5 ) @ U ) ) ) ) ).

% finite_less_ub
thf(fact_6563_sum_Oswap__restrict,axiom,
    ! [A3: set_int,B3: set_nat,G: int > nat > nat,R5: int > nat > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ( groups4541462559716669496nt_nat
            @ ^ [X4: int] :
                ( groups3542108847815614940at_nat @ ( G @ X4 )
                @ ( collect_nat
                  @ ^ [Y: nat] :
                      ( ( member_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups3542108847815614940at_nat
            @ ^ [Y: nat] :
                ( groups4541462559716669496nt_nat
                @ ^ [X4: int] : ( G @ X4 @ Y )
                @ ( collect_int
                  @ ^ [X4: int] :
                      ( ( member_int @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% sum.swap_restrict
thf(fact_6564_sum_Oswap__restrict,axiom,
    ! [A3: set_nat,B3: set_int,G: nat > int > int,R5: nat > int > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ( groups3539618377306564664at_int
            @ ^ [X4: nat] :
                ( groups4538972089207619220nt_int @ ( G @ X4 )
                @ ( collect_int
                  @ ^ [Y: int] :
                      ( ( member_int @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups4538972089207619220nt_int
            @ ^ [Y: int] :
                ( groups3539618377306564664at_int
                @ ^ [X4: nat] : ( G @ X4 @ Y )
                @ ( collect_nat
                  @ ^ [X4: nat] :
                      ( ( member_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% sum.swap_restrict
thf(fact_6565_sum_Oswap__restrict,axiom,
    ! [A3: set_nat,B3: set_int,G: nat > int > nat,R5: nat > int > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ( groups3542108847815614940at_nat
            @ ^ [X4: nat] :
                ( groups4541462559716669496nt_nat @ ( G @ X4 )
                @ ( collect_int
                  @ ^ [Y: int] :
                      ( ( member_int @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups4541462559716669496nt_nat
            @ ^ [Y: int] :
                ( groups3542108847815614940at_nat
                @ ^ [X4: nat] : ( G @ X4 @ Y )
                @ ( collect_nat
                  @ ^ [X4: nat] :
                      ( ( member_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% sum.swap_restrict
thf(fact_6566_sum_Oswap__restrict,axiom,
    ! [A3: set_nat,B3: set_nat,G: nat > nat > nat,R5: nat > nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ( groups3542108847815614940at_nat
            @ ^ [X4: nat] :
                ( groups3542108847815614940at_nat @ ( G @ X4 )
                @ ( collect_nat
                  @ ^ [Y: nat] :
                      ( ( member_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups3542108847815614940at_nat
            @ ^ [Y: nat] :
                ( groups3542108847815614940at_nat
                @ ^ [X4: nat] : ( G @ X4 @ Y )
                @ ( collect_nat
                  @ ^ [X4: nat] :
                      ( ( member_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% sum.swap_restrict
thf(fact_6567_sum_Oswap__restrict,axiom,
    ! [A3: set_int,B3: set_nat,G: int > nat > int,R5: int > nat > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ( groups4538972089207619220nt_int
            @ ^ [X4: int] :
                ( groups3539618377306564664at_int @ ( G @ X4 )
                @ ( collect_nat
                  @ ^ [Y: nat] :
                      ( ( member_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups3539618377306564664at_int
            @ ^ [Y: nat] :
                ( groups4538972089207619220nt_int
                @ ^ [X4: int] : ( G @ X4 @ Y )
                @ ( collect_int
                  @ ^ [X4: int] :
                      ( ( member_int @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% sum.swap_restrict
thf(fact_6568_sum_Oswap__restrict,axiom,
    ! [A3: set_int,B3: set_int,G: int > int > int,R5: int > int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ( groups4538972089207619220nt_int
            @ ^ [X4: int] :
                ( groups4538972089207619220nt_int @ ( G @ X4 )
                @ ( collect_int
                  @ ^ [Y: int] :
                      ( ( member_int @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups4538972089207619220nt_int
            @ ^ [Y: int] :
                ( groups4538972089207619220nt_int
                @ ^ [X4: int] : ( G @ X4 @ Y )
                @ ( collect_int
                  @ ^ [X4: int] :
                      ( ( member_int @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% sum.swap_restrict
thf(fact_6569_sum_Oswap__restrict,axiom,
    ! [A3: set_set_nat,B3: set_nat,G: set_nat > nat > nat,R5: set_nat > nat > $o] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ( groups8294997508430121362at_nat
            @ ^ [X4: set_nat] :
                ( groups3542108847815614940at_nat @ ( G @ X4 )
                @ ( collect_nat
                  @ ^ [Y: nat] :
                      ( ( member_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups3542108847815614940at_nat
            @ ^ [Y: nat] :
                ( groups8294997508430121362at_nat
                @ ^ [X4: set_nat] : ( G @ X4 @ Y )
                @ ( collect_set_nat
                  @ ^ [X4: set_nat] :
                      ( ( member_set_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% sum.swap_restrict
thf(fact_6570_sum_Oswap__restrict,axiom,
    ! [A3: set_set_nat,B3: set_int,G: set_nat > int > int,R5: set_nat > int > $o] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ( groups8292507037921071086at_int
            @ ^ [X4: set_nat] :
                ( groups4538972089207619220nt_int @ ( G @ X4 )
                @ ( collect_int
                  @ ^ [Y: int] :
                      ( ( member_int @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups4538972089207619220nt_int
            @ ^ [Y: int] :
                ( groups8292507037921071086at_int
                @ ^ [X4: set_nat] : ( G @ X4 @ Y )
                @ ( collect_set_nat
                  @ ^ [X4: set_nat] :
                      ( ( member_set_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% sum.swap_restrict
thf(fact_6571_sum_Oswap__restrict,axiom,
    ! [A3: set_nat,B3: set_set_nat,G: nat > set_nat > nat,R5: nat > set_nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite1152437895449049373et_nat @ B3 )
       => ( ( groups3542108847815614940at_nat
            @ ^ [X4: nat] :
                ( groups8294997508430121362at_nat @ ( G @ X4 )
                @ ( collect_set_nat
                  @ ^ [Y: set_nat] :
                      ( ( member_set_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups8294997508430121362at_nat
            @ ^ [Y: set_nat] :
                ( groups3542108847815614940at_nat
                @ ^ [X4: nat] : ( G @ X4 @ Y )
                @ ( collect_nat
                  @ ^ [X4: nat] :
                      ( ( member_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% sum.swap_restrict
thf(fact_6572_sum_Oswap__restrict,axiom,
    ! [A3: set_int,B3: set_set_nat,G: int > set_nat > int,R5: int > set_nat > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( finite1152437895449049373et_nat @ B3 )
       => ( ( groups4538972089207619220nt_int
            @ ^ [X4: int] :
                ( groups8292507037921071086at_int @ ( G @ X4 )
                @ ( collect_set_nat
                  @ ^ [Y: set_nat] :
                      ( ( member_set_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups8292507037921071086at_int
            @ ^ [Y: set_nat] :
                ( groups4538972089207619220nt_int
                @ ^ [X4: int] : ( G @ X4 @ Y )
                @ ( collect_int
                  @ ^ [X4: int] :
                      ( ( member_int @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% sum.swap_restrict
thf(fact_6573_prod_Oswap__restrict,axiom,
    ! [A3: set_int,B3: set_nat,G: int > nat > nat,R5: int > nat > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ( groups1707563613775114915nt_nat
            @ ^ [X4: int] :
                ( groups708209901874060359at_nat @ ( G @ X4 )
                @ ( collect_nat
                  @ ^ [Y: nat] :
                      ( ( member_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups708209901874060359at_nat
            @ ^ [Y: nat] :
                ( groups1707563613775114915nt_nat
                @ ^ [X4: int] : ( G @ X4 @ Y )
                @ ( collect_int
                  @ ^ [X4: int] :
                      ( ( member_int @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% prod.swap_restrict
thf(fact_6574_prod_Oswap__restrict,axiom,
    ! [A3: set_nat,B3: set_int,G: nat > int > nat,R5: nat > int > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ( groups708209901874060359at_nat
            @ ^ [X4: nat] :
                ( groups1707563613775114915nt_nat @ ( G @ X4 )
                @ ( collect_int
                  @ ^ [Y: int] :
                      ( ( member_int @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups1707563613775114915nt_nat
            @ ^ [Y: int] :
                ( groups708209901874060359at_nat
                @ ^ [X4: nat] : ( G @ X4 @ Y )
                @ ( collect_nat
                  @ ^ [X4: nat] :
                      ( ( member_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% prod.swap_restrict
thf(fact_6575_prod_Oswap__restrict,axiom,
    ! [A3: set_nat,B3: set_nat,G: nat > nat > nat,R5: nat > nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ( groups708209901874060359at_nat
            @ ^ [X4: nat] :
                ( groups708209901874060359at_nat @ ( G @ X4 )
                @ ( collect_nat
                  @ ^ [Y: nat] :
                      ( ( member_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups708209901874060359at_nat
            @ ^ [Y: nat] :
                ( groups708209901874060359at_nat
                @ ^ [X4: nat] : ( G @ X4 @ Y )
                @ ( collect_nat
                  @ ^ [X4: nat] :
                      ( ( member_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% prod.swap_restrict
thf(fact_6576_prod_Oswap__restrict,axiom,
    ! [A3: set_nat,B3: set_nat,G: nat > nat > int,R5: nat > nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ( groups705719431365010083at_int
            @ ^ [X4: nat] :
                ( groups705719431365010083at_int @ ( G @ X4 )
                @ ( collect_nat
                  @ ^ [Y: nat] :
                      ( ( member_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups705719431365010083at_int
            @ ^ [Y: nat] :
                ( groups705719431365010083at_int
                @ ^ [X4: nat] : ( G @ X4 @ Y )
                @ ( collect_nat
                  @ ^ [X4: nat] :
                      ( ( member_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% prod.swap_restrict
thf(fact_6577_prod_Oswap__restrict,axiom,
    ! [A3: set_nat,B3: set_int,G: nat > int > int,R5: nat > int > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ( groups705719431365010083at_int
            @ ^ [X4: nat] :
                ( groups1705073143266064639nt_int @ ( G @ X4 )
                @ ( collect_int
                  @ ^ [Y: int] :
                      ( ( member_int @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups1705073143266064639nt_int
            @ ^ [Y: int] :
                ( groups705719431365010083at_int
                @ ^ [X4: nat] : ( G @ X4 @ Y )
                @ ( collect_nat
                  @ ^ [X4: nat] :
                      ( ( member_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% prod.swap_restrict
thf(fact_6578_prod_Oswap__restrict,axiom,
    ! [A3: set_int,B3: set_nat,G: int > nat > int,R5: int > nat > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ( groups1705073143266064639nt_int
            @ ^ [X4: int] :
                ( groups705719431365010083at_int @ ( G @ X4 )
                @ ( collect_nat
                  @ ^ [Y: nat] :
                      ( ( member_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups705719431365010083at_int
            @ ^ [Y: nat] :
                ( groups1705073143266064639nt_int
                @ ^ [X4: int] : ( G @ X4 @ Y )
                @ ( collect_int
                  @ ^ [X4: int] :
                      ( ( member_int @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% prod.swap_restrict
thf(fact_6579_prod_Oswap__restrict,axiom,
    ! [A3: set_int,B3: set_int,G: int > int > int,R5: int > int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ( groups1705073143266064639nt_int
            @ ^ [X4: int] :
                ( groups1705073143266064639nt_int @ ( G @ X4 )
                @ ( collect_int
                  @ ^ [Y: int] :
                      ( ( member_int @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups1705073143266064639nt_int
            @ ^ [Y: int] :
                ( groups1705073143266064639nt_int
                @ ^ [X4: int] : ( G @ X4 @ Y )
                @ ( collect_int
                  @ ^ [X4: int] :
                      ( ( member_int @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% prod.swap_restrict
thf(fact_6580_prod_Oswap__restrict,axiom,
    ! [A3: set_set_nat,B3: set_nat,G: set_nat > nat > nat,R5: set_nat > nat > $o] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ( groups4248547760180025341at_nat
            @ ^ [X4: set_nat] :
                ( groups708209901874060359at_nat @ ( G @ X4 )
                @ ( collect_nat
                  @ ^ [Y: nat] :
                      ( ( member_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups708209901874060359at_nat
            @ ^ [Y: nat] :
                ( groups4248547760180025341at_nat
                @ ^ [X4: set_nat] : ( G @ X4 @ Y )
                @ ( collect_set_nat
                  @ ^ [X4: set_nat] :
                      ( ( member_set_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% prod.swap_restrict
thf(fact_6581_prod_Oswap__restrict,axiom,
    ! [A3: set_set_nat,B3: set_nat,G: set_nat > nat > int,R5: set_nat > nat > $o] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ( groups4246057289670975065at_int
            @ ^ [X4: set_nat] :
                ( groups705719431365010083at_int @ ( G @ X4 )
                @ ( collect_nat
                  @ ^ [Y: nat] :
                      ( ( member_nat @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups705719431365010083at_int
            @ ^ [Y: nat] :
                ( groups4246057289670975065at_int
                @ ^ [X4: set_nat] : ( G @ X4 @ Y )
                @ ( collect_set_nat
                  @ ^ [X4: set_nat] :
                      ( ( member_set_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% prod.swap_restrict
thf(fact_6582_prod_Oswap__restrict,axiom,
    ! [A3: set_set_nat,B3: set_int,G: set_nat > int > int,R5: set_nat > int > $o] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ( groups4246057289670975065at_int
            @ ^ [X4: set_nat] :
                ( groups1705073143266064639nt_int @ ( G @ X4 )
                @ ( collect_int
                  @ ^ [Y: int] :
                      ( ( member_int @ Y @ B3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ A3 )
          = ( groups1705073143266064639nt_int
            @ ^ [Y: int] :
                ( groups4246057289670975065at_int
                @ ^ [X4: set_nat] : ( G @ X4 @ Y )
                @ ( collect_set_nat
                  @ ^ [X4: set_nat] :
                      ( ( member_set_nat @ X4 @ A3 )
                      & ( R5 @ X4 @ Y ) ) ) )
            @ B3 ) ) ) ) ).

% prod.swap_restrict
thf(fact_6583_gcd__le2__nat,axiom,
    ! [B: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ord_less_eq_nat @ ( gcd_gcd_nat @ A @ B ) @ B ) ) ).

% gcd_le2_nat
thf(fact_6584_gcd__le1__nat,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ( ord_less_eq_nat @ ( gcd_gcd_nat @ A @ B ) @ A ) ) ).

% gcd_le1_nat
thf(fact_6585_gcd__diff2__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( gcd_gcd_nat @ ( minus_minus_nat @ N @ M ) @ N )
        = ( gcd_gcd_nat @ M @ N ) ) ) ).

% gcd_diff2_nat
thf(fact_6586_gcd__diff1__nat,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( gcd_gcd_nat @ ( minus_minus_nat @ M @ N ) @ N )
        = ( gcd_gcd_nat @ M @ N ) ) ) ).

% gcd_diff1_nat
thf(fact_6587_gcd__nat_Oelims,axiom,
    ! [X: nat,Xa: nat,Y3: nat] :
      ( ( ( gcd_gcd_nat @ X @ Xa )
        = Y3 )
     => ( ( ( Xa = zero_zero_nat )
         => ( Y3 = X ) )
        & ( ( Xa != zero_zero_nat )
         => ( Y3
            = ( gcd_gcd_nat @ Xa @ ( modulo_modulo_nat @ X @ Xa ) ) ) ) ) ) ).

% gcd_nat.elims
thf(fact_6588_gcd__nat_Osimps,axiom,
    ( gcd_gcd_nat
    = ( ^ [X4: nat,Y: nat] : ( if_nat @ ( Y = zero_zero_nat ) @ X4 @ ( gcd_gcd_nat @ Y @ ( modulo_modulo_nat @ X4 @ Y ) ) ) ) ) ).

% gcd_nat.simps
thf(fact_6589_gcd__non__0__nat,axiom,
    ! [Y3: nat,X: nat] :
      ( ( Y3 != zero_zero_nat )
     => ( ( gcd_gcd_nat @ X @ Y3 )
        = ( gcd_gcd_nat @ Y3 @ ( modulo_modulo_nat @ X @ Y3 ) ) ) ) ).

% gcd_non_0_nat
thf(fact_6590_sum_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_int,S3: set_int,I: int > int,J: int > int,T4: set_int,G: int > nat,H: int > nat] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = zero_zero_nat ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = zero_zero_nat ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups4541462559716669496nt_nat @ G @ S3 )
                        = ( groups4541462559716669496nt_nat @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% sum.reindex_bij_witness_not_neutral
thf(fact_6591_sum_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_int,S3: set_int,I: int > int,J: int > int,T4: set_int,G: int > code_integer,H: int > code_integer] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = zero_z3403309356797280102nteger ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = zero_z3403309356797280102nteger ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups7873554091576472773nteger @ G @ S3 )
                        = ( groups7873554091576472773nteger @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% sum.reindex_bij_witness_not_neutral
thf(fact_6592_sum_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_int,S3: set_int,I: int > int,J: int > int,T4: set_int,G: int > rat,H: int > rat] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = zero_zero_rat ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = zero_zero_rat ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups3906332499630173760nt_rat @ G @ S3 )
                        = ( groups3906332499630173760nt_rat @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% sum.reindex_bij_witness_not_neutral
thf(fact_6593_sum_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_int,S3: set_int,I: int > int,J: int > int,T4: set_int,G: int > code_natural,H: int > code_natural] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = zero_z2226904508553997617atural ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = zero_z2226904508553997617atural ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups6697149243333190288atural @ G @ S3 )
                        = ( groups6697149243333190288atural @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% sum.reindex_bij_witness_not_neutral
thf(fact_6594_sum_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_nat,S3: set_int,I: nat > int,J: int > nat,T4: set_nat,G: int > code_integer,H: nat > code_integer] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_nat @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_nat @ ( J @ A2 ) @ ( minus_minus_set_nat @ T4 @ T3 ) ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: nat] :
                    ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = zero_z3403309356797280102nteger ) )
                 => ( ! [B2: nat] :
                        ( ( member_nat @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = zero_z3403309356797280102nteger ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups7873554091576472773nteger @ G @ S3 )
                        = ( groups7501900531339628137nteger @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% sum.reindex_bij_witness_not_neutral
thf(fact_6595_sum_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_nat,S3: set_int,I: nat > int,J: int > nat,T4: set_nat,G: int > rat,H: nat > rat] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_nat @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_nat @ ( J @ A2 ) @ ( minus_minus_set_nat @ T4 @ T3 ) ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: nat] :
                    ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = zero_zero_rat ) )
                 => ( ! [B2: nat] :
                        ( ( member_nat @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = zero_zero_rat ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups3906332499630173760nt_rat @ G @ S3 )
                        = ( groups2906978787729119204at_rat @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% sum.reindex_bij_witness_not_neutral
thf(fact_6596_sum_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_nat,S3: set_int,I: nat > int,J: int > nat,T4: set_nat,G: int > code_natural,H: nat > code_natural] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_nat @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_nat @ ( J @ A2 ) @ ( minus_minus_set_nat @ T4 @ T3 ) ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: nat] :
                    ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = zero_z2226904508553997617atural ) )
                 => ( ! [B2: nat] :
                        ( ( member_nat @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = zero_z2226904508553997617atural ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups6697149243333190288atural @ G @ S3 )
                        = ( groups6325495683096345652atural @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% sum.reindex_bij_witness_not_neutral
thf(fact_6597_sum_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_nat,T3: set_int,S3: set_nat,I: int > nat,J: nat > int,T4: set_int,G: nat > code_integer,H: int > code_integer] :
      ( ( finite_finite_nat @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: nat] :
              ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_nat @ ( I @ B2 ) @ ( minus_minus_set_nat @ S3 @ S6 ) ) )
               => ( ! [A2: nat] :
                      ( ( member_nat @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = zero_z3403309356797280102nteger ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = zero_z3403309356797280102nteger ) )
                   => ( ! [A2: nat] :
                          ( ( member_nat @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups7501900531339628137nteger @ G @ S3 )
                        = ( groups7873554091576472773nteger @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% sum.reindex_bij_witness_not_neutral
thf(fact_6598_sum_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_nat,T3: set_int,S3: set_nat,I: int > nat,J: nat > int,T4: set_int,G: nat > rat,H: int > rat] :
      ( ( finite_finite_nat @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: nat] :
              ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_nat @ ( I @ B2 ) @ ( minus_minus_set_nat @ S3 @ S6 ) ) )
               => ( ! [A2: nat] :
                      ( ( member_nat @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = zero_zero_rat ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = zero_zero_rat ) )
                   => ( ! [A2: nat] :
                          ( ( member_nat @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups2906978787729119204at_rat @ G @ S3 )
                        = ( groups3906332499630173760nt_rat @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% sum.reindex_bij_witness_not_neutral
thf(fact_6599_sum_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_nat,T3: set_int,S3: set_nat,I: int > nat,J: nat > int,T4: set_int,G: nat > code_natural,H: int > code_natural] :
      ( ( finite_finite_nat @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: nat] :
              ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_nat @ ( I @ B2 ) @ ( minus_minus_set_nat @ S3 @ S6 ) ) )
               => ( ! [A2: nat] :
                      ( ( member_nat @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = zero_z2226904508553997617atural ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = zero_z2226904508553997617atural ) )
                   => ( ! [A2: nat] :
                          ( ( member_nat @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups6325495683096345652atural @ G @ S3 )
                        = ( groups6697149243333190288atural @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% sum.reindex_bij_witness_not_neutral
thf(fact_6600_prod__zero,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ? [X6: int] :
            ( ( member_int @ X6 @ A3 )
            & ( ( F @ X6 )
              = zero_zero_nat ) )
       => ( ( groups1707563613775114915nt_nat @ F @ A3 )
          = zero_zero_nat ) ) ) ).

% prod_zero
thf(fact_6601_prod__zero,axiom,
    ! [A3: set_nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ A3 )
     => ( ? [X6: nat] :
            ( ( member_nat @ X6 @ A3 )
            & ( ( F @ X6 )
              = zero_z3403309356797280102nteger ) )
       => ( ( groups3455450783089532116nteger @ F @ A3 )
          = zero_z3403309356797280102nteger ) ) ) ).

% prod_zero
thf(fact_6602_prod__zero,axiom,
    ! [A3: set_int,F: int > code_integer] :
      ( ( finite_finite_int @ A3 )
     => ( ? [X6: int] :
            ( ( member_int @ X6 @ A3 )
            & ( ( F @ X6 )
              = zero_z3403309356797280102nteger ) )
       => ( ( groups3827104343326376752nteger @ F @ A3 )
          = zero_z3403309356797280102nteger ) ) ) ).

% prod_zero
thf(fact_6603_prod__zero,axiom,
    ! [A3: set_nat,F: nat > rat] :
      ( ( finite_finite_nat @ A3 )
     => ( ? [X6: nat] :
            ( ( member_nat @ X6 @ A3 )
            & ( ( F @ X6 )
              = zero_zero_rat ) )
       => ( ( groups73079841787564623at_rat @ F @ A3 )
          = zero_zero_rat ) ) ) ).

% prod_zero
thf(fact_6604_prod__zero,axiom,
    ! [A3: set_int,F: int > rat] :
      ( ( finite_finite_int @ A3 )
     => ( ? [X6: int] :
            ( ( member_int @ X6 @ A3 )
            & ( ( F @ X6 )
              = zero_zero_rat ) )
       => ( ( groups1072433553688619179nt_rat @ F @ A3 )
          = zero_zero_rat ) ) ) ).

% prod_zero
thf(fact_6605_prod__zero,axiom,
    ! [A3: set_nat,F: nat > code_natural] :
      ( ( finite_finite_nat @ A3 )
     => ( ? [X6: nat] :
            ( ( member_nat @ X6 @ A3 )
            & ( ( F @ X6 )
              = zero_z2226904508553997617atural ) )
       => ( ( groups2279045934846249631atural @ F @ A3 )
          = zero_z2226904508553997617atural ) ) ) ).

% prod_zero
thf(fact_6606_prod__zero,axiom,
    ! [A3: set_int,F: int > code_natural] :
      ( ( finite_finite_int @ A3 )
     => ( ? [X6: int] :
            ( ( member_int @ X6 @ A3 )
            & ( ( F @ X6 )
              = zero_z2226904508553997617atural ) )
       => ( ( groups2650699495083094267atural @ F @ A3 )
          = zero_z2226904508553997617atural ) ) ) ).

% prod_zero
thf(fact_6607_prod__zero,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ? [X6: nat] :
            ( ( member_nat @ X6 @ A3 )
            & ( ( F @ X6 )
              = zero_zero_nat ) )
       => ( ( groups708209901874060359at_nat @ F @ A3 )
          = zero_zero_nat ) ) ) ).

% prod_zero
thf(fact_6608_prod__zero,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ( finite_finite_nat @ A3 )
     => ( ? [X6: nat] :
            ( ( member_nat @ X6 @ A3 )
            & ( ( F @ X6 )
              = zero_zero_int ) )
       => ( ( groups705719431365010083at_int @ F @ A3 )
          = zero_zero_int ) ) ) ).

% prod_zero
thf(fact_6609_prod__zero,axiom,
    ! [A3: set_int,F: int > int] :
      ( ( finite_finite_int @ A3 )
     => ( ? [X6: int] :
            ( ( member_int @ X6 @ A3 )
            & ( ( F @ X6 )
              = zero_zero_int ) )
       => ( ( groups1705073143266064639nt_int @ F @ A3 )
          = zero_zero_int ) ) ) ).

% prod_zero
thf(fact_6610_prod_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_int,S3: set_int,I: int > int,J: int > int,T4: set_int,G: int > nat,H: int > nat] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = one_one_nat ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = one_one_nat ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups1707563613775114915nt_nat @ G @ S3 )
                        = ( groups1707563613775114915nt_nat @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% prod.reindex_bij_witness_not_neutral
thf(fact_6611_prod_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_int,S3: set_int,I: int > int,J: int > int,T4: set_int,G: int > code_integer,H: int > code_integer] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = one_one_Code_integer ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = one_one_Code_integer ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups3827104343326376752nteger @ G @ S3 )
                        = ( groups3827104343326376752nteger @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% prod.reindex_bij_witness_not_neutral
thf(fact_6612_prod_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_int,S3: set_int,I: int > int,J: int > int,T4: set_int,G: int > rat,H: int > rat] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = one_one_rat ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = one_one_rat ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups1072433553688619179nt_rat @ G @ S3 )
                        = ( groups1072433553688619179nt_rat @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% prod.reindex_bij_witness_not_neutral
thf(fact_6613_prod_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_int,S3: set_int,I: int > int,J: int > int,T4: set_int,G: int > code_natural,H: int > code_natural] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = one_one_Code_natural ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = one_one_Code_natural ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups2650699495083094267atural @ G @ S3 )
                        = ( groups2650699495083094267atural @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% prod.reindex_bij_witness_not_neutral
thf(fact_6614_prod_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_nat,S3: set_int,I: nat > int,J: int > nat,T4: set_nat,G: int > code_integer,H: nat > code_integer] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_nat @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_nat @ ( J @ A2 ) @ ( minus_minus_set_nat @ T4 @ T3 ) ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: nat] :
                    ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = one_one_Code_integer ) )
                 => ( ! [B2: nat] :
                        ( ( member_nat @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = one_one_Code_integer ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups3827104343326376752nteger @ G @ S3 )
                        = ( groups3455450783089532116nteger @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% prod.reindex_bij_witness_not_neutral
thf(fact_6615_prod_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_nat,S3: set_int,I: nat > int,J: int > nat,T4: set_nat,G: int > rat,H: nat > rat] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_nat @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_nat @ ( J @ A2 ) @ ( minus_minus_set_nat @ T4 @ T3 ) ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: nat] :
                    ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = one_one_rat ) )
                 => ( ! [B2: nat] :
                        ( ( member_nat @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = one_one_rat ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups1072433553688619179nt_rat @ G @ S3 )
                        = ( groups73079841787564623at_rat @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% prod.reindex_bij_witness_not_neutral
thf(fact_6616_prod_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_int,T3: set_nat,S3: set_int,I: nat > int,J: int > nat,T4: set_nat,G: int > code_natural,H: nat > code_natural] :
      ( ( finite_finite_int @ S6 )
     => ( ( finite_finite_nat @ T3 )
       => ( ! [A2: int] :
              ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ S3 @ S6 ) )
               => ( member_nat @ ( J @ A2 ) @ ( minus_minus_set_nat @ T4 @ T3 ) ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: nat] :
                    ( ( member_nat @ B2 @ ( minus_minus_set_nat @ T4 @ T3 ) )
                   => ( member_int @ ( I @ B2 ) @ ( minus_minus_set_int @ S3 @ S6 ) ) )
               => ( ! [A2: int] :
                      ( ( member_int @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = one_one_Code_natural ) )
                 => ( ! [B2: nat] :
                        ( ( member_nat @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = one_one_Code_natural ) )
                   => ( ! [A2: int] :
                          ( ( member_int @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups2650699495083094267atural @ G @ S3 )
                        = ( groups2279045934846249631atural @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% prod.reindex_bij_witness_not_neutral
thf(fact_6617_prod_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_nat,T3: set_int,S3: set_nat,I: int > nat,J: nat > int,T4: set_int,G: nat > code_integer,H: int > code_integer] :
      ( ( finite_finite_nat @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: nat] :
              ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_nat @ ( I @ B2 ) @ ( minus_minus_set_nat @ S3 @ S6 ) ) )
               => ( ! [A2: nat] :
                      ( ( member_nat @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = one_one_Code_integer ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = one_one_Code_integer ) )
                   => ( ! [A2: nat] :
                          ( ( member_nat @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups3455450783089532116nteger @ G @ S3 )
                        = ( groups3827104343326376752nteger @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% prod.reindex_bij_witness_not_neutral
thf(fact_6618_prod_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_nat,T3: set_int,S3: set_nat,I: int > nat,J: nat > int,T4: set_int,G: nat > rat,H: int > rat] :
      ( ( finite_finite_nat @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: nat] :
              ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_nat @ ( I @ B2 ) @ ( minus_minus_set_nat @ S3 @ S6 ) ) )
               => ( ! [A2: nat] :
                      ( ( member_nat @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = one_one_rat ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = one_one_rat ) )
                   => ( ! [A2: nat] :
                          ( ( member_nat @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups73079841787564623at_rat @ G @ S3 )
                        = ( groups1072433553688619179nt_rat @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% prod.reindex_bij_witness_not_neutral
thf(fact_6619_prod_Oreindex__bij__witness__not__neutral,axiom,
    ! [S6: set_nat,T3: set_int,S3: set_nat,I: int > nat,J: nat > int,T4: set_int,G: nat > code_natural,H: int > code_natural] :
      ( ( finite_finite_nat @ S6 )
     => ( ( finite_finite_int @ T3 )
       => ( ! [A2: nat] :
              ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
             => ( ( I @ ( J @ A2 ) )
                = A2 ) )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ S3 @ S6 ) )
               => ( member_int @ ( J @ A2 ) @ ( minus_minus_set_int @ T4 @ T3 ) ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                 => ( ( J @ ( I @ B2 ) )
                    = B2 ) )
             => ( ! [B2: int] :
                    ( ( member_int @ B2 @ ( minus_minus_set_int @ T4 @ T3 ) )
                   => ( member_nat @ ( I @ B2 ) @ ( minus_minus_set_nat @ S3 @ S6 ) ) )
               => ( ! [A2: nat] :
                      ( ( member_nat @ A2 @ S6 )
                     => ( ( G @ A2 )
                        = one_one_Code_natural ) )
                 => ( ! [B2: int] :
                        ( ( member_int @ B2 @ T3 )
                       => ( ( H @ B2 )
                          = one_one_Code_natural ) )
                   => ( ! [A2: nat] :
                          ( ( member_nat @ A2 @ S3 )
                         => ( ( H @ ( J @ A2 ) )
                            = ( G @ A2 ) ) )
                     => ( ( groups2279045934846249631atural @ G @ S3 )
                        = ( groups2650699495083094267atural @ H @ T4 ) ) ) ) ) ) ) ) ) ) ) ).

% prod.reindex_bij_witness_not_neutral
thf(fact_6620_gcd__integer_Orep__eq,axiom,
    ! [X: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( gcd_gcd_Code_integer @ X @ Xa ) )
      = ( gcd_gcd_int @ ( code_int_of_integer @ X ) @ ( code_int_of_integer @ Xa ) ) ) ).

% gcd_integer.rep_eq
thf(fact_6621_gcd__integer_Oabs__eq,axiom,
    ! [Xa: int,X: int] :
      ( ( gcd_gcd_Code_integer @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X ) )
      = ( code_integer_of_int @ ( gcd_gcd_int @ Xa @ X ) ) ) ).

% gcd_integer.abs_eq
thf(fact_6622_subset__eq__atLeast0__atMost__finite,axiom,
    ! [N6: set_nat,N: nat] :
      ( ( ord_less_eq_set_nat @ N6 @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
     => ( finite_finite_nat @ N6 ) ) ).

% subset_eq_atLeast0_atMost_finite
thf(fact_6623_subset__eq__atLeast0__lessThan__finite,axiom,
    ! [N6: set_nat,N: nat] :
      ( ( ord_less_eq_set_nat @ N6 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
     => ( finite_finite_nat @ N6 ) ) ).

% subset_eq_atLeast0_lessThan_finite
thf(fact_6624_set__bit__nat__def,axiom,
    ( bit_se7882103937844011126it_nat
    = ( ^ [M5: nat,N5: nat] : ( bit_se1412395901928357646or_nat @ N5 @ ( bit_se547839408752420682it_nat @ M5 @ one_one_nat ) ) ) ) ).

% set_bit_nat_def
thf(fact_6625_sum_Ofinite__Collect__op,axiom,
    ! [I5: set_nat,X: nat > nat,Y3: nat > nat] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [I2: nat] :
              ( ( member_nat @ I2 @ I5 )
              & ( ( X @ I2 )
               != zero_zero_nat ) ) ) )
     => ( ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != zero_zero_nat ) ) ) )
       => ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( plus_plus_nat @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != zero_zero_nat ) ) ) ) ) ) ).

% sum.finite_Collect_op
thf(fact_6626_sum_Ofinite__Collect__op,axiom,
    ! [I5: set_int,X: int > nat,Y3: int > nat] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [I2: int] :
              ( ( member_int @ I2 @ I5 )
              & ( ( X @ I2 )
               != zero_zero_nat ) ) ) )
     => ( ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != zero_zero_nat ) ) ) )
       => ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( plus_plus_nat @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != zero_zero_nat ) ) ) ) ) ) ).

% sum.finite_Collect_op
thf(fact_6627_sum_Ofinite__Collect__op,axiom,
    ! [I5: set_nat,X: nat > int,Y3: nat > int] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [I2: nat] :
              ( ( member_nat @ I2 @ I5 )
              & ( ( X @ I2 )
               != zero_zero_int ) ) ) )
     => ( ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != zero_zero_int ) ) ) )
       => ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( plus_plus_int @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != zero_zero_int ) ) ) ) ) ) ).

% sum.finite_Collect_op
thf(fact_6628_sum_Ofinite__Collect__op,axiom,
    ! [I5: set_int,X: int > int,Y3: int > int] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [I2: int] :
              ( ( member_int @ I2 @ I5 )
              & ( ( X @ I2 )
               != zero_zero_int ) ) ) )
     => ( ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != zero_zero_int ) ) ) )
       => ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( plus_plus_int @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != zero_zero_int ) ) ) ) ) ) ).

% sum.finite_Collect_op
thf(fact_6629_sum_Ofinite__Collect__op,axiom,
    ! [I5: set_nat,X: nat > code_integer,Y3: nat > code_integer] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [I2: nat] :
              ( ( member_nat @ I2 @ I5 )
              & ( ( X @ I2 )
               != zero_z3403309356797280102nteger ) ) ) )
     => ( ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != zero_z3403309356797280102nteger ) ) ) )
       => ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( plus_p5714425477246183910nteger @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != zero_z3403309356797280102nteger ) ) ) ) ) ) ).

% sum.finite_Collect_op
thf(fact_6630_sum_Ofinite__Collect__op,axiom,
    ! [I5: set_int,X: int > code_integer,Y3: int > code_integer] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [I2: int] :
              ( ( member_int @ I2 @ I5 )
              & ( ( X @ I2 )
               != zero_z3403309356797280102nteger ) ) ) )
     => ( ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != zero_z3403309356797280102nteger ) ) ) )
       => ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( plus_p5714425477246183910nteger @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != zero_z3403309356797280102nteger ) ) ) ) ) ) ).

% sum.finite_Collect_op
thf(fact_6631_sum_Ofinite__Collect__op,axiom,
    ! [I5: set_nat,X: nat > rat,Y3: nat > rat] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [I2: nat] :
              ( ( member_nat @ I2 @ I5 )
              & ( ( X @ I2 )
               != zero_zero_rat ) ) ) )
     => ( ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != zero_zero_rat ) ) ) )
       => ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( plus_plus_rat @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != zero_zero_rat ) ) ) ) ) ) ).

% sum.finite_Collect_op
thf(fact_6632_sum_Ofinite__Collect__op,axiom,
    ! [I5: set_int,X: int > rat,Y3: int > rat] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [I2: int] :
              ( ( member_int @ I2 @ I5 )
              & ( ( X @ I2 )
               != zero_zero_rat ) ) ) )
     => ( ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != zero_zero_rat ) ) ) )
       => ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( plus_plus_rat @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != zero_zero_rat ) ) ) ) ) ) ).

% sum.finite_Collect_op
thf(fact_6633_sum_Ofinite__Collect__op,axiom,
    ! [I5: set_nat,X: nat > code_natural,Y3: nat > code_natural] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [I2: nat] :
              ( ( member_nat @ I2 @ I5 )
              & ( ( X @ I2 )
               != zero_z2226904508553997617atural ) ) ) )
     => ( ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != zero_z2226904508553997617atural ) ) ) )
       => ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( plus_p4538020629002901425atural @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != zero_z2226904508553997617atural ) ) ) ) ) ) ).

% sum.finite_Collect_op
thf(fact_6634_sum_Ofinite__Collect__op,axiom,
    ! [I5: set_int,X: int > code_natural,Y3: int > code_natural] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [I2: int] :
              ( ( member_int @ I2 @ I5 )
              & ( ( X @ I2 )
               != zero_z2226904508553997617atural ) ) ) )
     => ( ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != zero_z2226904508553997617atural ) ) ) )
       => ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( plus_p4538020629002901425atural @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != zero_z2226904508553997617atural ) ) ) ) ) ) ).

% sum.finite_Collect_op
thf(fact_6635_prod_Ofinite__Collect__op,axiom,
    ! [I5: set_nat,X: nat > code_natural,Y3: nat > code_natural] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [I2: nat] :
              ( ( member_nat @ I2 @ I5 )
              & ( ( X @ I2 )
               != one_one_Code_natural ) ) ) )
     => ( ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != one_one_Code_natural ) ) ) )
       => ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( times_2397367101498566445atural @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != one_one_Code_natural ) ) ) ) ) ) ).

% prod.finite_Collect_op
thf(fact_6636_prod_Ofinite__Collect__op,axiom,
    ! [I5: set_int,X: int > code_natural,Y3: int > code_natural] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [I2: int] :
              ( ( member_int @ I2 @ I5 )
              & ( ( X @ I2 )
               != one_one_Code_natural ) ) ) )
     => ( ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != one_one_Code_natural ) ) ) )
       => ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( times_2397367101498566445atural @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != one_one_Code_natural ) ) ) ) ) ) ).

% prod.finite_Collect_op
thf(fact_6637_prod_Ofinite__Collect__op,axiom,
    ! [I5: set_nat,X: nat > nat,Y3: nat > nat] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [I2: nat] :
              ( ( member_nat @ I2 @ I5 )
              & ( ( X @ I2 )
               != one_one_nat ) ) ) )
     => ( ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != one_one_nat ) ) ) )
       => ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( times_times_nat @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != one_one_nat ) ) ) ) ) ) ).

% prod.finite_Collect_op
thf(fact_6638_prod_Ofinite__Collect__op,axiom,
    ! [I5: set_int,X: int > nat,Y3: int > nat] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [I2: int] :
              ( ( member_int @ I2 @ I5 )
              & ( ( X @ I2 )
               != one_one_nat ) ) ) )
     => ( ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != one_one_nat ) ) ) )
       => ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( times_times_nat @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != one_one_nat ) ) ) ) ) ) ).

% prod.finite_Collect_op
thf(fact_6639_prod_Ofinite__Collect__op,axiom,
    ! [I5: set_nat,X: nat > int,Y3: nat > int] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [I2: nat] :
              ( ( member_nat @ I2 @ I5 )
              & ( ( X @ I2 )
               != one_one_int ) ) ) )
     => ( ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != one_one_int ) ) ) )
       => ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( times_times_int @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != one_one_int ) ) ) ) ) ) ).

% prod.finite_Collect_op
thf(fact_6640_prod_Ofinite__Collect__op,axiom,
    ! [I5: set_int,X: int > int,Y3: int > int] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [I2: int] :
              ( ( member_int @ I2 @ I5 )
              & ( ( X @ I2 )
               != one_one_int ) ) ) )
     => ( ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != one_one_int ) ) ) )
       => ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( times_times_int @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != one_one_int ) ) ) ) ) ) ).

% prod.finite_Collect_op
thf(fact_6641_prod_Ofinite__Collect__op,axiom,
    ! [I5: set_nat,X: nat > code_integer,Y3: nat > code_integer] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [I2: nat] :
              ( ( member_nat @ I2 @ I5 )
              & ( ( X @ I2 )
               != one_one_Code_integer ) ) ) )
     => ( ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != one_one_Code_integer ) ) ) )
       => ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( times_3573771949741848930nteger @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != one_one_Code_integer ) ) ) ) ) ) ).

% prod.finite_Collect_op
thf(fact_6642_prod_Ofinite__Collect__op,axiom,
    ! [I5: set_int,X: int > code_integer,Y3: int > code_integer] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [I2: int] :
              ( ( member_int @ I2 @ I5 )
              & ( ( X @ I2 )
               != one_one_Code_integer ) ) ) )
     => ( ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != one_one_Code_integer ) ) ) )
       => ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( times_3573771949741848930nteger @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != one_one_Code_integer ) ) ) ) ) ) ).

% prod.finite_Collect_op
thf(fact_6643_prod_Ofinite__Collect__op,axiom,
    ! [I5: set_nat,X: nat > rat,Y3: nat > rat] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [I2: nat] :
              ( ( member_nat @ I2 @ I5 )
              & ( ( X @ I2 )
               != one_one_rat ) ) ) )
     => ( ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != one_one_rat ) ) ) )
       => ( finite_finite_nat
          @ ( collect_nat
            @ ^ [I2: nat] :
                ( ( member_nat @ I2 @ I5 )
                & ( ( times_times_rat @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != one_one_rat ) ) ) ) ) ) ).

% prod.finite_Collect_op
thf(fact_6644_prod_Ofinite__Collect__op,axiom,
    ! [I5: set_int,X: int > rat,Y3: int > rat] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [I2: int] :
              ( ( member_int @ I2 @ I5 )
              & ( ( X @ I2 )
               != one_one_rat ) ) ) )
     => ( ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( Y3 @ I2 )
                 != one_one_rat ) ) ) )
       => ( finite_finite_int
          @ ( collect_int
            @ ^ [I2: int] :
                ( ( member_int @ I2 @ I5 )
                & ( ( times_times_rat @ ( X @ I2 ) @ ( Y3 @ I2 ) )
                 != one_one_rat ) ) ) ) ) ) ).

% prod.finite_Collect_op
thf(fact_6645_sum_Ointer__filter,axiom,
    ! [A3: set_int,G: int > nat,P: int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups4541462559716669496nt_nat @ G
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups4541462559716669496nt_nat
          @ ^ [X4: int] : ( if_nat @ ( P @ X4 ) @ ( G @ X4 ) @ zero_zero_nat )
          @ A3 ) ) ) ).

% sum.inter_filter
thf(fact_6646_sum_Ointer__filter,axiom,
    ! [A3: set_nat,G: nat > int,P: nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups3539618377306564664at_int @ G
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups3539618377306564664at_int
          @ ^ [X4: nat] : ( if_int @ ( P @ X4 ) @ ( G @ X4 ) @ zero_zero_int )
          @ A3 ) ) ) ).

% sum.inter_filter
thf(fact_6647_sum_Ointer__filter,axiom,
    ! [A3: set_nat,G: nat > code_integer,P: nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups7501900531339628137nteger @ G
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups7501900531339628137nteger
          @ ^ [X4: nat] : ( if_Code_integer @ ( P @ X4 ) @ ( G @ X4 ) @ zero_z3403309356797280102nteger )
          @ A3 ) ) ) ).

% sum.inter_filter
thf(fact_6648_sum_Ointer__filter,axiom,
    ! [A3: set_int,G: int > code_integer,P: int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups7873554091576472773nteger @ G
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups7873554091576472773nteger
          @ ^ [X4: int] : ( if_Code_integer @ ( P @ X4 ) @ ( G @ X4 ) @ zero_z3403309356797280102nteger )
          @ A3 ) ) ) ).

% sum.inter_filter
thf(fact_6649_sum_Ointer__filter,axiom,
    ! [A3: set_nat,G: nat > rat,P: nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups2906978787729119204at_rat @ G
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups2906978787729119204at_rat
          @ ^ [X4: nat] : ( if_rat @ ( P @ X4 ) @ ( G @ X4 ) @ zero_zero_rat )
          @ A3 ) ) ) ).

% sum.inter_filter
thf(fact_6650_sum_Ointer__filter,axiom,
    ! [A3: set_int,G: int > rat,P: int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups3906332499630173760nt_rat @ G
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups3906332499630173760nt_rat
          @ ^ [X4: int] : ( if_rat @ ( P @ X4 ) @ ( G @ X4 ) @ zero_zero_rat )
          @ A3 ) ) ) ).

% sum.inter_filter
thf(fact_6651_sum_Ointer__filter,axiom,
    ! [A3: set_nat,G: nat > code_natural,P: nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups6325495683096345652atural @ G
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups6325495683096345652atural
          @ ^ [X4: nat] : ( if_Code_natural @ ( P @ X4 ) @ ( G @ X4 ) @ zero_z2226904508553997617atural )
          @ A3 ) ) ) ).

% sum.inter_filter
thf(fact_6652_sum_Ointer__filter,axiom,
    ! [A3: set_int,G: int > code_natural,P: int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups6697149243333190288atural @ G
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups6697149243333190288atural
          @ ^ [X4: int] : ( if_Code_natural @ ( P @ X4 ) @ ( G @ X4 ) @ zero_z2226904508553997617atural )
          @ A3 ) ) ) ).

% sum.inter_filter
thf(fact_6653_sum_Ointer__filter,axiom,
    ! [A3: set_nat,G: nat > nat,P: nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups3542108847815614940at_nat @ G
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups3542108847815614940at_nat
          @ ^ [X4: nat] : ( if_nat @ ( P @ X4 ) @ ( G @ X4 ) @ zero_zero_nat )
          @ A3 ) ) ) ).

% sum.inter_filter
thf(fact_6654_sum_Ointer__filter,axiom,
    ! [A3: set_int,G: int > int,P: int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups4538972089207619220nt_int @ G
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups4538972089207619220nt_int
          @ ^ [X4: int] : ( if_int @ ( P @ X4 ) @ ( G @ X4 ) @ zero_zero_int )
          @ A3 ) ) ) ).

% sum.inter_filter
thf(fact_6655_sum_Osetdiff__irrelevant,axiom,
    ! [A3: set_int,G: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups4541462559716669496nt_nat @ G
          @ ( minus_minus_set_int @ A3
            @ ( collect_int
              @ ^ [X4: int] :
                  ( ( G @ X4 )
                  = zero_zero_nat ) ) ) )
        = ( groups4541462559716669496nt_nat @ G @ A3 ) ) ) ).

% sum.setdiff_irrelevant
thf(fact_6656_sum_Osetdiff__irrelevant,axiom,
    ! [A3: set_int,G: int > code_integer] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups7873554091576472773nteger @ G
          @ ( minus_minus_set_int @ A3
            @ ( collect_int
              @ ^ [X4: int] :
                  ( ( G @ X4 )
                  = zero_z3403309356797280102nteger ) ) ) )
        = ( groups7873554091576472773nteger @ G @ A3 ) ) ) ).

% sum.setdiff_irrelevant
thf(fact_6657_sum_Osetdiff__irrelevant,axiom,
    ! [A3: set_int,G: int > rat] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups3906332499630173760nt_rat @ G
          @ ( minus_minus_set_int @ A3
            @ ( collect_int
              @ ^ [X4: int] :
                  ( ( G @ X4 )
                  = zero_zero_rat ) ) ) )
        = ( groups3906332499630173760nt_rat @ G @ A3 ) ) ) ).

% sum.setdiff_irrelevant
thf(fact_6658_sum_Osetdiff__irrelevant,axiom,
    ! [A3: set_int,G: int > code_natural] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups6697149243333190288atural @ G
          @ ( minus_minus_set_int @ A3
            @ ( collect_int
              @ ^ [X4: int] :
                  ( ( G @ X4 )
                  = zero_z2226904508553997617atural ) ) ) )
        = ( groups6697149243333190288atural @ G @ A3 ) ) ) ).

% sum.setdiff_irrelevant
thf(fact_6659_sum_Osetdiff__irrelevant,axiom,
    ! [A3: set_nat,G: nat > int] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups3539618377306564664at_int @ G
          @ ( minus_minus_set_nat @ A3
            @ ( collect_nat
              @ ^ [X4: nat] :
                  ( ( G @ X4 )
                  = zero_zero_int ) ) ) )
        = ( groups3539618377306564664at_int @ G @ A3 ) ) ) ).

% sum.setdiff_irrelevant
thf(fact_6660_sum_Osetdiff__irrelevant,axiom,
    ! [A3: set_nat,G: nat > code_integer] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups7501900531339628137nteger @ G
          @ ( minus_minus_set_nat @ A3
            @ ( collect_nat
              @ ^ [X4: nat] :
                  ( ( G @ X4 )
                  = zero_z3403309356797280102nteger ) ) ) )
        = ( groups7501900531339628137nteger @ G @ A3 ) ) ) ).

% sum.setdiff_irrelevant
thf(fact_6661_sum_Osetdiff__irrelevant,axiom,
    ! [A3: set_nat,G: nat > rat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups2906978787729119204at_rat @ G
          @ ( minus_minus_set_nat @ A3
            @ ( collect_nat
              @ ^ [X4: nat] :
                  ( ( G @ X4 )
                  = zero_zero_rat ) ) ) )
        = ( groups2906978787729119204at_rat @ G @ A3 ) ) ) ).

% sum.setdiff_irrelevant
thf(fact_6662_sum_Osetdiff__irrelevant,axiom,
    ! [A3: set_nat,G: nat > code_natural] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups6325495683096345652atural @ G
          @ ( minus_minus_set_nat @ A3
            @ ( collect_nat
              @ ^ [X4: nat] :
                  ( ( G @ X4 )
                  = zero_z2226904508553997617atural ) ) ) )
        = ( groups6325495683096345652atural @ G @ A3 ) ) ) ).

% sum.setdiff_irrelevant
thf(fact_6663_sum_Osetdiff__irrelevant,axiom,
    ! [A3: set_nat,G: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups3542108847815614940at_nat @ G
          @ ( minus_minus_set_nat @ A3
            @ ( collect_nat
              @ ^ [X4: nat] :
                  ( ( G @ X4 )
                  = zero_zero_nat ) ) ) )
        = ( groups3542108847815614940at_nat @ G @ A3 ) ) ) ).

% sum.setdiff_irrelevant
thf(fact_6664_sum_Osetdiff__irrelevant,axiom,
    ! [A3: set_int,G: int > int] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups4538972089207619220nt_int @ G
          @ ( minus_minus_set_int @ A3
            @ ( collect_int
              @ ^ [X4: int] :
                  ( ( G @ X4 )
                  = zero_zero_int ) ) ) )
        = ( groups4538972089207619220nt_int @ G @ A3 ) ) ) ).

% sum.setdiff_irrelevant
thf(fact_6665_prod_Osetdiff__irrelevant,axiom,
    ! [A3: set_int,G: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups1707563613775114915nt_nat @ G
          @ ( minus_minus_set_int @ A3
            @ ( collect_int
              @ ^ [X4: int] :
                  ( ( G @ X4 )
                  = one_one_nat ) ) ) )
        = ( groups1707563613775114915nt_nat @ G @ A3 ) ) ) ).

% prod.setdiff_irrelevant
thf(fact_6666_prod_Osetdiff__irrelevant,axiom,
    ! [A3: set_int,G: int > code_integer] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups3827104343326376752nteger @ G
          @ ( minus_minus_set_int @ A3
            @ ( collect_int
              @ ^ [X4: int] :
                  ( ( G @ X4 )
                  = one_one_Code_integer ) ) ) )
        = ( groups3827104343326376752nteger @ G @ A3 ) ) ) ).

% prod.setdiff_irrelevant
thf(fact_6667_prod_Osetdiff__irrelevant,axiom,
    ! [A3: set_int,G: int > rat] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups1072433553688619179nt_rat @ G
          @ ( minus_minus_set_int @ A3
            @ ( collect_int
              @ ^ [X4: int] :
                  ( ( G @ X4 )
                  = one_one_rat ) ) ) )
        = ( groups1072433553688619179nt_rat @ G @ A3 ) ) ) ).

% prod.setdiff_irrelevant
thf(fact_6668_prod_Osetdiff__irrelevant,axiom,
    ! [A3: set_int,G: int > code_natural] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups2650699495083094267atural @ G
          @ ( minus_minus_set_int @ A3
            @ ( collect_int
              @ ^ [X4: int] :
                  ( ( G @ X4 )
                  = one_one_Code_natural ) ) ) )
        = ( groups2650699495083094267atural @ G @ A3 ) ) ) ).

% prod.setdiff_irrelevant
thf(fact_6669_prod_Osetdiff__irrelevant,axiom,
    ! [A3: set_nat,G: nat > code_integer] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups3455450783089532116nteger @ G
          @ ( minus_minus_set_nat @ A3
            @ ( collect_nat
              @ ^ [X4: nat] :
                  ( ( G @ X4 )
                  = one_one_Code_integer ) ) ) )
        = ( groups3455450783089532116nteger @ G @ A3 ) ) ) ).

% prod.setdiff_irrelevant
thf(fact_6670_prod_Osetdiff__irrelevant,axiom,
    ! [A3: set_nat,G: nat > rat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups73079841787564623at_rat @ G
          @ ( minus_minus_set_nat @ A3
            @ ( collect_nat
              @ ^ [X4: nat] :
                  ( ( G @ X4 )
                  = one_one_rat ) ) ) )
        = ( groups73079841787564623at_rat @ G @ A3 ) ) ) ).

% prod.setdiff_irrelevant
thf(fact_6671_prod_Osetdiff__irrelevant,axiom,
    ! [A3: set_nat,G: nat > code_natural] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups2279045934846249631atural @ G
          @ ( minus_minus_set_nat @ A3
            @ ( collect_nat
              @ ^ [X4: nat] :
                  ( ( G @ X4 )
                  = one_one_Code_natural ) ) ) )
        = ( groups2279045934846249631atural @ G @ A3 ) ) ) ).

% prod.setdiff_irrelevant
thf(fact_6672_prod_Osetdiff__irrelevant,axiom,
    ! [A3: set_nat,G: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups708209901874060359at_nat @ G
          @ ( minus_minus_set_nat @ A3
            @ ( collect_nat
              @ ^ [X4: nat] :
                  ( ( G @ X4 )
                  = one_one_nat ) ) ) )
        = ( groups708209901874060359at_nat @ G @ A3 ) ) ) ).

% prod.setdiff_irrelevant
thf(fact_6673_prod_Osetdiff__irrelevant,axiom,
    ! [A3: set_nat,G: nat > int] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups705719431365010083at_int @ G
          @ ( minus_minus_set_nat @ A3
            @ ( collect_nat
              @ ^ [X4: nat] :
                  ( ( G @ X4 )
                  = one_one_int ) ) ) )
        = ( groups705719431365010083at_int @ G @ A3 ) ) ) ).

% prod.setdiff_irrelevant
thf(fact_6674_prod_Osetdiff__irrelevant,axiom,
    ! [A3: set_int,G: int > int] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups1705073143266064639nt_int @ G
          @ ( minus_minus_set_int @ A3
            @ ( collect_int
              @ ^ [X4: int] :
                  ( ( G @ X4 )
                  = one_one_int ) ) ) )
        = ( groups1705073143266064639nt_int @ G @ A3 ) ) ) ).

% prod.setdiff_irrelevant
thf(fact_6675_prod_Ointer__filter,axiom,
    ! [A3: set_int,G: int > nat,P: int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups1707563613775114915nt_nat @ G
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups1707563613775114915nt_nat
          @ ^ [X4: int] : ( if_nat @ ( P @ X4 ) @ ( G @ X4 ) @ one_one_nat )
          @ A3 ) ) ) ).

% prod.inter_filter
thf(fact_6676_prod_Ointer__filter,axiom,
    ! [A3: set_nat,G: nat > code_integer,P: nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups3455450783089532116nteger @ G
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups3455450783089532116nteger
          @ ^ [X4: nat] : ( if_Code_integer @ ( P @ X4 ) @ ( G @ X4 ) @ one_one_Code_integer )
          @ A3 ) ) ) ).

% prod.inter_filter
thf(fact_6677_prod_Ointer__filter,axiom,
    ! [A3: set_int,G: int > code_integer,P: int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups3827104343326376752nteger @ G
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups3827104343326376752nteger
          @ ^ [X4: int] : ( if_Code_integer @ ( P @ X4 ) @ ( G @ X4 ) @ one_one_Code_integer )
          @ A3 ) ) ) ).

% prod.inter_filter
thf(fact_6678_prod_Ointer__filter,axiom,
    ! [A3: set_nat,G: nat > rat,P: nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups73079841787564623at_rat @ G
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups73079841787564623at_rat
          @ ^ [X4: nat] : ( if_rat @ ( P @ X4 ) @ ( G @ X4 ) @ one_one_rat )
          @ A3 ) ) ) ).

% prod.inter_filter
thf(fact_6679_prod_Ointer__filter,axiom,
    ! [A3: set_int,G: int > rat,P: int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups1072433553688619179nt_rat @ G
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups1072433553688619179nt_rat
          @ ^ [X4: int] : ( if_rat @ ( P @ X4 ) @ ( G @ X4 ) @ one_one_rat )
          @ A3 ) ) ) ).

% prod.inter_filter
thf(fact_6680_prod_Ointer__filter,axiom,
    ! [A3: set_nat,G: nat > code_natural,P: nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups2279045934846249631atural @ G
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups2279045934846249631atural
          @ ^ [X4: nat] : ( if_Code_natural @ ( P @ X4 ) @ ( G @ X4 ) @ one_one_Code_natural )
          @ A3 ) ) ) ).

% prod.inter_filter
thf(fact_6681_prod_Ointer__filter,axiom,
    ! [A3: set_int,G: int > code_natural,P: int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups2650699495083094267atural @ G
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups2650699495083094267atural
          @ ^ [X4: int] : ( if_Code_natural @ ( P @ X4 ) @ ( G @ X4 ) @ one_one_Code_natural )
          @ A3 ) ) ) ).

% prod.inter_filter
thf(fact_6682_prod_Ointer__filter,axiom,
    ! [A3: set_nat,G: nat > nat,P: nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups708209901874060359at_nat @ G
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups708209901874060359at_nat
          @ ^ [X4: nat] : ( if_nat @ ( P @ X4 ) @ ( G @ X4 ) @ one_one_nat )
          @ A3 ) ) ) ).

% prod.inter_filter
thf(fact_6683_prod_Ointer__filter,axiom,
    ! [A3: set_nat,G: nat > int,P: nat > $o] :
      ( ( finite_finite_nat @ A3 )
     => ( ( groups705719431365010083at_int @ G
          @ ( collect_nat
            @ ^ [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups705719431365010083at_int
          @ ^ [X4: nat] : ( if_int @ ( P @ X4 ) @ ( G @ X4 ) @ one_one_int )
          @ A3 ) ) ) ).

% prod.inter_filter
thf(fact_6684_prod_Ointer__filter,axiom,
    ! [A3: set_int,G: int > int,P: int > $o] :
      ( ( finite_finite_int @ A3 )
     => ( ( groups1705073143266064639nt_int @ G
          @ ( collect_int
            @ ^ [X4: int] :
                ( ( member_int @ X4 @ A3 )
                & ( P @ X4 ) ) ) )
        = ( groups1705073143266064639nt_int
          @ ^ [X4: int] : ( if_int @ ( P @ X4 ) @ ( G @ X4 ) @ one_one_int )
          @ A3 ) ) ) ).

% prod.inter_filter
thf(fact_6685_finite__int__segment,axiom,
    ! [A: rat,B: rat] :
      ( finite_finite_rat
      @ ( collect_rat
        @ ^ [X4: rat] :
            ( ( member_rat @ X4 @ ring_1_Ints_rat )
            & ( ord_less_eq_rat @ A @ X4 )
            & ( ord_less_eq_rat @ X4 @ B ) ) ) ) ).

% finite_int_segment
thf(fact_6686_bezout__nat,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ? [X5: nat,Y4: nat] :
          ( ( times_times_nat @ A @ X5 )
          = ( plus_plus_nat @ ( times_times_nat @ B @ Y4 ) @ ( gcd_gcd_nat @ A @ B ) ) ) ) ).

% bezout_nat
thf(fact_6687_bezout__gcd__nat_H,axiom,
    ! [B: nat,A: nat] :
    ? [X5: nat,Y4: nat] :
      ( ( ( ord_less_eq_nat @ ( times_times_nat @ B @ Y4 ) @ ( times_times_nat @ A @ X5 ) )
        & ( ( minus_minus_nat @ ( times_times_nat @ A @ X5 ) @ ( times_times_nat @ B @ Y4 ) )
          = ( gcd_gcd_nat @ A @ B ) ) )
      | ( ( ord_less_eq_nat @ ( times_times_nat @ A @ Y4 ) @ ( times_times_nat @ B @ X5 ) )
        & ( ( minus_minus_nat @ ( times_times_nat @ B @ X5 ) @ ( times_times_nat @ A @ Y4 ) )
          = ( gcd_gcd_nat @ A @ B ) ) ) ) ).

% bezout_gcd_nat'
thf(fact_6688_sum__nonneg__eq__0__iff,axiom,
    ! [A3: set_nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ A3 )
     => ( ! [X5: nat] :
            ( ( member_nat @ X5 @ A3 )
           => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ X5 ) ) )
       => ( ( ( groups7501900531339628137nteger @ F @ A3 )
            = zero_z3403309356797280102nteger )
          = ( ! [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
               => ( ( F @ X4 )
                  = zero_z3403309356797280102nteger ) ) ) ) ) ) ).

% sum_nonneg_eq_0_iff
thf(fact_6689_sum__nonneg__eq__0__iff,axiom,
    ! [A3: set_int,F: int > code_integer] :
      ( ( finite_finite_int @ A3 )
     => ( ! [X5: int] :
            ( ( member_int @ X5 @ A3 )
           => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ X5 ) ) )
       => ( ( ( groups7873554091576472773nteger @ F @ A3 )
            = zero_z3403309356797280102nteger )
          = ( ! [X4: int] :
                ( ( member_int @ X4 @ A3 )
               => ( ( F @ X4 )
                  = zero_z3403309356797280102nteger ) ) ) ) ) ) ).

% sum_nonneg_eq_0_iff
thf(fact_6690_sum__nonneg__eq__0__iff,axiom,
    ! [A3: set_nat,F: nat > code_natural] :
      ( ( finite_finite_nat @ A3 )
     => ( ! [X5: nat] :
            ( ( member_nat @ X5 @ A3 )
           => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ X5 ) ) )
       => ( ( ( groups6325495683096345652atural @ F @ A3 )
            = zero_z2226904508553997617atural )
          = ( ! [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
               => ( ( F @ X4 )
                  = zero_z2226904508553997617atural ) ) ) ) ) ) ).

% sum_nonneg_eq_0_iff
thf(fact_6691_sum__nonneg__eq__0__iff,axiom,
    ! [A3: set_int,F: int > code_natural] :
      ( ( finite_finite_int @ A3 )
     => ( ! [X5: int] :
            ( ( member_int @ X5 @ A3 )
           => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ X5 ) ) )
       => ( ( ( groups6697149243333190288atural @ F @ A3 )
            = zero_z2226904508553997617atural )
          = ( ! [X4: int] :
                ( ( member_int @ X4 @ A3 )
               => ( ( F @ X4 )
                  = zero_z2226904508553997617atural ) ) ) ) ) ) ).

% sum_nonneg_eq_0_iff
thf(fact_6692_sum__nonneg__eq__0__iff,axiom,
    ! [A3: set_nat,F: nat > rat] :
      ( ( finite_finite_nat @ A3 )
     => ( ! [X5: nat] :
            ( ( member_nat @ X5 @ A3 )
           => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ X5 ) ) )
       => ( ( ( groups2906978787729119204at_rat @ F @ A3 )
            = zero_zero_rat )
          = ( ! [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
               => ( ( F @ X4 )
                  = zero_zero_rat ) ) ) ) ) ) ).

% sum_nonneg_eq_0_iff
thf(fact_6693_sum__nonneg__eq__0__iff,axiom,
    ! [A3: set_int,F: int > rat] :
      ( ( finite_finite_int @ A3 )
     => ( ! [X5: int] :
            ( ( member_int @ X5 @ A3 )
           => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ X5 ) ) )
       => ( ( ( groups3906332499630173760nt_rat @ F @ A3 )
            = zero_zero_rat )
          = ( ! [X4: int] :
                ( ( member_int @ X4 @ A3 )
               => ( ( F @ X4 )
                  = zero_zero_rat ) ) ) ) ) ) ).

% sum_nonneg_eq_0_iff
thf(fact_6694_sum__nonneg__eq__0__iff,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ! [X5: int] :
            ( ( member_int @ X5 @ A3 )
           => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ X5 ) ) )
       => ( ( ( groups4541462559716669496nt_nat @ F @ A3 )
            = zero_zero_nat )
          = ( ! [X4: int] :
                ( ( member_int @ X4 @ A3 )
               => ( ( F @ X4 )
                  = zero_zero_nat ) ) ) ) ) ) ).

% sum_nonneg_eq_0_iff
thf(fact_6695_sum__nonneg__eq__0__iff,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ( finite_finite_nat @ A3 )
     => ( ! [X5: nat] :
            ( ( member_nat @ X5 @ A3 )
           => ( ord_less_eq_int @ zero_zero_int @ ( F @ X5 ) ) )
       => ( ( ( groups3539618377306564664at_int @ F @ A3 )
            = zero_zero_int )
          = ( ! [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
               => ( ( F @ X4 )
                  = zero_zero_int ) ) ) ) ) ) ).

% sum_nonneg_eq_0_iff
thf(fact_6696_sum__nonneg__eq__0__iff,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ! [X5: nat] :
            ( ( member_nat @ X5 @ A3 )
           => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ X5 ) ) )
       => ( ( ( groups3542108847815614940at_nat @ F @ A3 )
            = zero_zero_nat )
          = ( ! [X4: nat] :
                ( ( member_nat @ X4 @ A3 )
               => ( ( F @ X4 )
                  = zero_zero_nat ) ) ) ) ) ) ).

% sum_nonneg_eq_0_iff
thf(fact_6697_sum__nonneg__eq__0__iff,axiom,
    ! [A3: set_int,F: int > int] :
      ( ( finite_finite_int @ A3 )
     => ( ! [X5: int] :
            ( ( member_int @ X5 @ A3 )
           => ( ord_less_eq_int @ zero_zero_int @ ( F @ X5 ) ) )
       => ( ( ( groups4538972089207619220nt_int @ F @ A3 )
            = zero_zero_int )
          = ( ! [X4: int] :
                ( ( member_int @ X4 @ A3 )
               => ( ( F @ X4 )
                  = zero_zero_int ) ) ) ) ) ) ).

% sum_nonneg_eq_0_iff
thf(fact_6698_sum__le__included,axiom,
    ! [S: set_nat,T: set_nat,G: nat > code_integer,I: nat > nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ S )
     => ( ( finite_finite_nat @ T )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T )
             => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( G @ X5 ) ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S )
               => ? [Xa2: nat] :
                    ( ( member_nat @ Xa2 @ T )
                    & ( ( I @ Xa2 )
                      = X5 )
                    & ( ord_le3102999989581377725nteger @ ( F @ X5 ) @ ( G @ Xa2 ) ) ) )
           => ( ord_le3102999989581377725nteger @ ( groups7501900531339628137nteger @ F @ S ) @ ( groups7501900531339628137nteger @ G @ T ) ) ) ) ) ) ).

% sum_le_included
thf(fact_6699_sum__le__included,axiom,
    ! [S: set_nat,T: set_int,G: int > code_integer,I: int > nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ S )
     => ( ( finite_finite_int @ T )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T )
             => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( G @ X5 ) ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S )
               => ? [Xa2: int] :
                    ( ( member_int @ Xa2 @ T )
                    & ( ( I @ Xa2 )
                      = X5 )
                    & ( ord_le3102999989581377725nteger @ ( F @ X5 ) @ ( G @ Xa2 ) ) ) )
           => ( ord_le3102999989581377725nteger @ ( groups7501900531339628137nteger @ F @ S ) @ ( groups7873554091576472773nteger @ G @ T ) ) ) ) ) ) ).

% sum_le_included
thf(fact_6700_sum__le__included,axiom,
    ! [S: set_int,T: set_nat,G: nat > code_integer,I: nat > int,F: int > code_integer] :
      ( ( finite_finite_int @ S )
     => ( ( finite_finite_nat @ T )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T )
             => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( G @ X5 ) ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S )
               => ? [Xa2: nat] :
                    ( ( member_nat @ Xa2 @ T )
                    & ( ( I @ Xa2 )
                      = X5 )
                    & ( ord_le3102999989581377725nteger @ ( F @ X5 ) @ ( G @ Xa2 ) ) ) )
           => ( ord_le3102999989581377725nteger @ ( groups7873554091576472773nteger @ F @ S ) @ ( groups7501900531339628137nteger @ G @ T ) ) ) ) ) ) ).

% sum_le_included
thf(fact_6701_sum__le__included,axiom,
    ! [S: set_int,T: set_int,G: int > code_integer,I: int > int,F: int > code_integer] :
      ( ( finite_finite_int @ S )
     => ( ( finite_finite_int @ T )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T )
             => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( G @ X5 ) ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S )
               => ? [Xa2: int] :
                    ( ( member_int @ Xa2 @ T )
                    & ( ( I @ Xa2 )
                      = X5 )
                    & ( ord_le3102999989581377725nteger @ ( F @ X5 ) @ ( G @ Xa2 ) ) ) )
           => ( ord_le3102999989581377725nteger @ ( groups7873554091576472773nteger @ F @ S ) @ ( groups7873554091576472773nteger @ G @ T ) ) ) ) ) ) ).

% sum_le_included
thf(fact_6702_sum__le__included,axiom,
    ! [S: set_nat,T: set_nat,G: nat > code_natural,I: nat > nat,F: nat > code_natural] :
      ( ( finite_finite_nat @ S )
     => ( ( finite_finite_nat @ T )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T )
             => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( G @ X5 ) ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S )
               => ? [Xa2: nat] :
                    ( ( member_nat @ Xa2 @ T )
                    & ( ( I @ Xa2 )
                      = X5 )
                    & ( ord_le1926595141338095240atural @ ( F @ X5 ) @ ( G @ Xa2 ) ) ) )
           => ( ord_le1926595141338095240atural @ ( groups6325495683096345652atural @ F @ S ) @ ( groups6325495683096345652atural @ G @ T ) ) ) ) ) ) ).

% sum_le_included
thf(fact_6703_sum__le__included,axiom,
    ! [S: set_nat,T: set_int,G: int > code_natural,I: int > nat,F: nat > code_natural] :
      ( ( finite_finite_nat @ S )
     => ( ( finite_finite_int @ T )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T )
             => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( G @ X5 ) ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S )
               => ? [Xa2: int] :
                    ( ( member_int @ Xa2 @ T )
                    & ( ( I @ Xa2 )
                      = X5 )
                    & ( ord_le1926595141338095240atural @ ( F @ X5 ) @ ( G @ Xa2 ) ) ) )
           => ( ord_le1926595141338095240atural @ ( groups6325495683096345652atural @ F @ S ) @ ( groups6697149243333190288atural @ G @ T ) ) ) ) ) ) ).

% sum_le_included
thf(fact_6704_sum__le__included,axiom,
    ! [S: set_int,T: set_nat,G: nat > code_natural,I: nat > int,F: int > code_natural] :
      ( ( finite_finite_int @ S )
     => ( ( finite_finite_nat @ T )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T )
             => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( G @ X5 ) ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S )
               => ? [Xa2: nat] :
                    ( ( member_nat @ Xa2 @ T )
                    & ( ( I @ Xa2 )
                      = X5 )
                    & ( ord_le1926595141338095240atural @ ( F @ X5 ) @ ( G @ Xa2 ) ) ) )
           => ( ord_le1926595141338095240atural @ ( groups6697149243333190288atural @ F @ S ) @ ( groups6325495683096345652atural @ G @ T ) ) ) ) ) ) ).

% sum_le_included
thf(fact_6705_sum__le__included,axiom,
    ! [S: set_int,T: set_int,G: int > code_natural,I: int > int,F: int > code_natural] :
      ( ( finite_finite_int @ S )
     => ( ( finite_finite_int @ T )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T )
             => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( G @ X5 ) ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S )
               => ? [Xa2: int] :
                    ( ( member_int @ Xa2 @ T )
                    & ( ( I @ Xa2 )
                      = X5 )
                    & ( ord_le1926595141338095240atural @ ( F @ X5 ) @ ( G @ Xa2 ) ) ) )
           => ( ord_le1926595141338095240atural @ ( groups6697149243333190288atural @ F @ S ) @ ( groups6697149243333190288atural @ G @ T ) ) ) ) ) ) ).

% sum_le_included
thf(fact_6706_sum__le__included,axiom,
    ! [S: set_nat,T: set_nat,G: nat > rat,I: nat > nat,F: nat > rat] :
      ( ( finite_finite_nat @ S )
     => ( ( finite_finite_nat @ T )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T )
             => ( ord_less_eq_rat @ zero_zero_rat @ ( G @ X5 ) ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S )
               => ? [Xa2: nat] :
                    ( ( member_nat @ Xa2 @ T )
                    & ( ( I @ Xa2 )
                      = X5 )
                    & ( ord_less_eq_rat @ ( F @ X5 ) @ ( G @ Xa2 ) ) ) )
           => ( ord_less_eq_rat @ ( groups2906978787729119204at_rat @ F @ S ) @ ( groups2906978787729119204at_rat @ G @ T ) ) ) ) ) ) ).

% sum_le_included
thf(fact_6707_sum__le__included,axiom,
    ! [S: set_nat,T: set_int,G: int > rat,I: int > nat,F: nat > rat] :
      ( ( finite_finite_nat @ S )
     => ( ( finite_finite_int @ T )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T )
             => ( ord_less_eq_rat @ zero_zero_rat @ ( G @ X5 ) ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S )
               => ? [Xa2: int] :
                    ( ( member_int @ Xa2 @ T )
                    & ( ( I @ Xa2 )
                      = X5 )
                    & ( ord_less_eq_rat @ ( F @ X5 ) @ ( G @ Xa2 ) ) ) )
           => ( ord_less_eq_rat @ ( groups2906978787729119204at_rat @ F @ S ) @ ( groups3906332499630173760nt_rat @ G @ T ) ) ) ) ) ) ).

% sum_le_included
thf(fact_6708_sum_Orelated,axiom,
    ! [R5: nat > nat > $o,S3: set_int,H: int > nat,G: int > nat] :
      ( ( R5 @ zero_zero_nat @ zero_zero_nat )
     => ( ! [X13: nat,Y12: nat,X22: nat,Y22: nat] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( plus_plus_nat @ X13 @ Y12 ) @ ( plus_plus_nat @ X22 @ Y22 ) ) )
       => ( ( finite_finite_int @ S3 )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups4541462559716669496nt_nat @ H @ S3 ) @ ( groups4541462559716669496nt_nat @ G @ S3 ) ) ) ) ) ) ).

% sum.related
thf(fact_6709_sum_Orelated,axiom,
    ! [R5: int > int > $o,S3: set_nat,H: nat > int,G: nat > int] :
      ( ( R5 @ zero_zero_int @ zero_zero_int )
     => ( ! [X13: int,Y12: int,X22: int,Y22: int] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( plus_plus_int @ X13 @ Y12 ) @ ( plus_plus_int @ X22 @ Y22 ) ) )
       => ( ( finite_finite_nat @ S3 )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups3539618377306564664at_int @ H @ S3 ) @ ( groups3539618377306564664at_int @ G @ S3 ) ) ) ) ) ) ).

% sum.related
thf(fact_6710_sum_Orelated,axiom,
    ! [R5: code_integer > code_integer > $o,S3: set_nat,H: nat > code_integer,G: nat > code_integer] :
      ( ( R5 @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger )
     => ( ! [X13: code_integer,Y12: code_integer,X22: code_integer,Y22: code_integer] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( plus_p5714425477246183910nteger @ X13 @ Y12 ) @ ( plus_p5714425477246183910nteger @ X22 @ Y22 ) ) )
       => ( ( finite_finite_nat @ S3 )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups7501900531339628137nteger @ H @ S3 ) @ ( groups7501900531339628137nteger @ G @ S3 ) ) ) ) ) ) ).

% sum.related
thf(fact_6711_sum_Orelated,axiom,
    ! [R5: code_integer > code_integer > $o,S3: set_int,H: int > code_integer,G: int > code_integer] :
      ( ( R5 @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger )
     => ( ! [X13: code_integer,Y12: code_integer,X22: code_integer,Y22: code_integer] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( plus_p5714425477246183910nteger @ X13 @ Y12 ) @ ( plus_p5714425477246183910nteger @ X22 @ Y22 ) ) )
       => ( ( finite_finite_int @ S3 )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups7873554091576472773nteger @ H @ S3 ) @ ( groups7873554091576472773nteger @ G @ S3 ) ) ) ) ) ) ).

% sum.related
thf(fact_6712_sum_Orelated,axiom,
    ! [R5: rat > rat > $o,S3: set_nat,H: nat > rat,G: nat > rat] :
      ( ( R5 @ zero_zero_rat @ zero_zero_rat )
     => ( ! [X13: rat,Y12: rat,X22: rat,Y22: rat] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( plus_plus_rat @ X13 @ Y12 ) @ ( plus_plus_rat @ X22 @ Y22 ) ) )
       => ( ( finite_finite_nat @ S3 )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups2906978787729119204at_rat @ H @ S3 ) @ ( groups2906978787729119204at_rat @ G @ S3 ) ) ) ) ) ) ).

% sum.related
thf(fact_6713_sum_Orelated,axiom,
    ! [R5: rat > rat > $o,S3: set_int,H: int > rat,G: int > rat] :
      ( ( R5 @ zero_zero_rat @ zero_zero_rat )
     => ( ! [X13: rat,Y12: rat,X22: rat,Y22: rat] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( plus_plus_rat @ X13 @ Y12 ) @ ( plus_plus_rat @ X22 @ Y22 ) ) )
       => ( ( finite_finite_int @ S3 )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups3906332499630173760nt_rat @ H @ S3 ) @ ( groups3906332499630173760nt_rat @ G @ S3 ) ) ) ) ) ) ).

% sum.related
thf(fact_6714_sum_Orelated,axiom,
    ! [R5: code_natural > code_natural > $o,S3: set_nat,H: nat > code_natural,G: nat > code_natural] :
      ( ( R5 @ zero_z2226904508553997617atural @ zero_z2226904508553997617atural )
     => ( ! [X13: code_natural,Y12: code_natural,X22: code_natural,Y22: code_natural] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( plus_p4538020629002901425atural @ X13 @ Y12 ) @ ( plus_p4538020629002901425atural @ X22 @ Y22 ) ) )
       => ( ( finite_finite_nat @ S3 )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups6325495683096345652atural @ H @ S3 ) @ ( groups6325495683096345652atural @ G @ S3 ) ) ) ) ) ) ).

% sum.related
thf(fact_6715_sum_Orelated,axiom,
    ! [R5: code_natural > code_natural > $o,S3: set_int,H: int > code_natural,G: int > code_natural] :
      ( ( R5 @ zero_z2226904508553997617atural @ zero_z2226904508553997617atural )
     => ( ! [X13: code_natural,Y12: code_natural,X22: code_natural,Y22: code_natural] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( plus_p4538020629002901425atural @ X13 @ Y12 ) @ ( plus_p4538020629002901425atural @ X22 @ Y22 ) ) )
       => ( ( finite_finite_int @ S3 )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups6697149243333190288atural @ H @ S3 ) @ ( groups6697149243333190288atural @ G @ S3 ) ) ) ) ) ) ).

% sum.related
thf(fact_6716_sum_Orelated,axiom,
    ! [R5: nat > nat > $o,S3: set_nat,H: nat > nat,G: nat > nat] :
      ( ( R5 @ zero_zero_nat @ zero_zero_nat )
     => ( ! [X13: nat,Y12: nat,X22: nat,Y22: nat] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( plus_plus_nat @ X13 @ Y12 ) @ ( plus_plus_nat @ X22 @ Y22 ) ) )
       => ( ( finite_finite_nat @ S3 )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups3542108847815614940at_nat @ H @ S3 ) @ ( groups3542108847815614940at_nat @ G @ S3 ) ) ) ) ) ) ).

% sum.related
thf(fact_6717_sum_Orelated,axiom,
    ! [R5: int > int > $o,S3: set_int,H: int > int,G: int > int] :
      ( ( R5 @ zero_zero_int @ zero_zero_int )
     => ( ! [X13: int,Y12: int,X22: int,Y22: int] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( plus_plus_int @ X13 @ Y12 ) @ ( plus_plus_int @ X22 @ Y22 ) ) )
       => ( ( finite_finite_int @ S3 )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups4538972089207619220nt_int @ H @ S3 ) @ ( groups4538972089207619220nt_int @ G @ S3 ) ) ) ) ) ) ).

% sum.related
thf(fact_6718_sum_Osame__carrier,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > nat,H: int > nat] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_nat ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_nat ) )
             => ( ( ( groups4541462559716669496nt_nat @ G @ A3 )
                  = ( groups4541462559716669496nt_nat @ H @ B3 ) )
                = ( ( groups4541462559716669496nt_nat @ G @ C5 )
                  = ( groups4541462559716669496nt_nat @ H @ C5 ) ) ) ) ) ) ) ) ).

% sum.same_carrier
thf(fact_6719_sum_Osame__carrier,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > code_integer,H: int > code_integer] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_z3403309356797280102nteger ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_z3403309356797280102nteger ) )
             => ( ( ( groups7873554091576472773nteger @ G @ A3 )
                  = ( groups7873554091576472773nteger @ H @ B3 ) )
                = ( ( groups7873554091576472773nteger @ G @ C5 )
                  = ( groups7873554091576472773nteger @ H @ C5 ) ) ) ) ) ) ) ) ).

% sum.same_carrier
thf(fact_6720_sum_Osame__carrier,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > rat,H: int > rat] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_rat ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_rat ) )
             => ( ( ( groups3906332499630173760nt_rat @ G @ A3 )
                  = ( groups3906332499630173760nt_rat @ H @ B3 ) )
                = ( ( groups3906332499630173760nt_rat @ G @ C5 )
                  = ( groups3906332499630173760nt_rat @ H @ C5 ) ) ) ) ) ) ) ) ).

% sum.same_carrier
thf(fact_6721_sum_Osame__carrier,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > code_natural,H: int > code_natural] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_z2226904508553997617atural ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_z2226904508553997617atural ) )
             => ( ( ( groups6697149243333190288atural @ G @ A3 )
                  = ( groups6697149243333190288atural @ H @ B3 ) )
                = ( ( groups6697149243333190288atural @ G @ C5 )
                  = ( groups6697149243333190288atural @ H @ C5 ) ) ) ) ) ) ) ) ).

% sum.same_carrier
thf(fact_6722_sum_Osame__carrier,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > int,H: nat > int] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_int ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_int ) )
             => ( ( ( groups3539618377306564664at_int @ G @ A3 )
                  = ( groups3539618377306564664at_int @ H @ B3 ) )
                = ( ( groups3539618377306564664at_int @ G @ C5 )
                  = ( groups3539618377306564664at_int @ H @ C5 ) ) ) ) ) ) ) ) ).

% sum.same_carrier
thf(fact_6723_sum_Osame__carrier,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > code_integer,H: nat > code_integer] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_z3403309356797280102nteger ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_z3403309356797280102nteger ) )
             => ( ( ( groups7501900531339628137nteger @ G @ A3 )
                  = ( groups7501900531339628137nteger @ H @ B3 ) )
                = ( ( groups7501900531339628137nteger @ G @ C5 )
                  = ( groups7501900531339628137nteger @ H @ C5 ) ) ) ) ) ) ) ) ).

% sum.same_carrier
thf(fact_6724_sum_Osame__carrier,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > rat,H: nat > rat] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_rat ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_rat ) )
             => ( ( ( groups2906978787729119204at_rat @ G @ A3 )
                  = ( groups2906978787729119204at_rat @ H @ B3 ) )
                = ( ( groups2906978787729119204at_rat @ G @ C5 )
                  = ( groups2906978787729119204at_rat @ H @ C5 ) ) ) ) ) ) ) ) ).

% sum.same_carrier
thf(fact_6725_sum_Osame__carrier,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > code_natural,H: nat > code_natural] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_z2226904508553997617atural ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_z2226904508553997617atural ) )
             => ( ( ( groups6325495683096345652atural @ G @ A3 )
                  = ( groups6325495683096345652atural @ H @ B3 ) )
                = ( ( groups6325495683096345652atural @ G @ C5 )
                  = ( groups6325495683096345652atural @ H @ C5 ) ) ) ) ) ) ) ) ).

% sum.same_carrier
thf(fact_6726_sum_Osame__carrier,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > nat,H: nat > nat] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_nat ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_nat ) )
             => ( ( ( groups3542108847815614940at_nat @ G @ A3 )
                  = ( groups3542108847815614940at_nat @ H @ B3 ) )
                = ( ( groups3542108847815614940at_nat @ G @ C5 )
                  = ( groups3542108847815614940at_nat @ H @ C5 ) ) ) ) ) ) ) ) ).

% sum.same_carrier
thf(fact_6727_sum_Osame__carrier,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > int,H: int > int] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_int ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_int ) )
             => ( ( ( groups4538972089207619220nt_int @ G @ A3 )
                  = ( groups4538972089207619220nt_int @ H @ B3 ) )
                = ( ( groups4538972089207619220nt_int @ G @ C5 )
                  = ( groups4538972089207619220nt_int @ H @ C5 ) ) ) ) ) ) ) ) ).

% sum.same_carrier
thf(fact_6728_sum_Osame__carrierI,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > nat,H: int > nat] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_nat ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_nat ) )
             => ( ( ( groups4541462559716669496nt_nat @ G @ C5 )
                  = ( groups4541462559716669496nt_nat @ H @ C5 ) )
               => ( ( groups4541462559716669496nt_nat @ G @ A3 )
                  = ( groups4541462559716669496nt_nat @ H @ B3 ) ) ) ) ) ) ) ) ).

% sum.same_carrierI
thf(fact_6729_sum_Osame__carrierI,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > code_integer,H: int > code_integer] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_z3403309356797280102nteger ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_z3403309356797280102nteger ) )
             => ( ( ( groups7873554091576472773nteger @ G @ C5 )
                  = ( groups7873554091576472773nteger @ H @ C5 ) )
               => ( ( groups7873554091576472773nteger @ G @ A3 )
                  = ( groups7873554091576472773nteger @ H @ B3 ) ) ) ) ) ) ) ) ).

% sum.same_carrierI
thf(fact_6730_sum_Osame__carrierI,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > rat,H: int > rat] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_rat ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_rat ) )
             => ( ( ( groups3906332499630173760nt_rat @ G @ C5 )
                  = ( groups3906332499630173760nt_rat @ H @ C5 ) )
               => ( ( groups3906332499630173760nt_rat @ G @ A3 )
                  = ( groups3906332499630173760nt_rat @ H @ B3 ) ) ) ) ) ) ) ) ).

% sum.same_carrierI
thf(fact_6731_sum_Osame__carrierI,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > code_natural,H: int > code_natural] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_z2226904508553997617atural ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_z2226904508553997617atural ) )
             => ( ( ( groups6697149243333190288atural @ G @ C5 )
                  = ( groups6697149243333190288atural @ H @ C5 ) )
               => ( ( groups6697149243333190288atural @ G @ A3 )
                  = ( groups6697149243333190288atural @ H @ B3 ) ) ) ) ) ) ) ) ).

% sum.same_carrierI
thf(fact_6732_sum_Osame__carrierI,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > int,H: nat > int] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_int ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_int ) )
             => ( ( ( groups3539618377306564664at_int @ G @ C5 )
                  = ( groups3539618377306564664at_int @ H @ C5 ) )
               => ( ( groups3539618377306564664at_int @ G @ A3 )
                  = ( groups3539618377306564664at_int @ H @ B3 ) ) ) ) ) ) ) ) ).

% sum.same_carrierI
thf(fact_6733_sum_Osame__carrierI,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > code_integer,H: nat > code_integer] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_z3403309356797280102nteger ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_z3403309356797280102nteger ) )
             => ( ( ( groups7501900531339628137nteger @ G @ C5 )
                  = ( groups7501900531339628137nteger @ H @ C5 ) )
               => ( ( groups7501900531339628137nteger @ G @ A3 )
                  = ( groups7501900531339628137nteger @ H @ B3 ) ) ) ) ) ) ) ) ).

% sum.same_carrierI
thf(fact_6734_sum_Osame__carrierI,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > rat,H: nat > rat] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_rat ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_rat ) )
             => ( ( ( groups2906978787729119204at_rat @ G @ C5 )
                  = ( groups2906978787729119204at_rat @ H @ C5 ) )
               => ( ( groups2906978787729119204at_rat @ G @ A3 )
                  = ( groups2906978787729119204at_rat @ H @ B3 ) ) ) ) ) ) ) ) ).

% sum.same_carrierI
thf(fact_6735_sum_Osame__carrierI,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > code_natural,H: nat > code_natural] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_z2226904508553997617atural ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_z2226904508553997617atural ) )
             => ( ( ( groups6325495683096345652atural @ G @ C5 )
                  = ( groups6325495683096345652atural @ H @ C5 ) )
               => ( ( groups6325495683096345652atural @ G @ A3 )
                  = ( groups6325495683096345652atural @ H @ B3 ) ) ) ) ) ) ) ) ).

% sum.same_carrierI
thf(fact_6736_sum_Osame__carrierI,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > nat,H: nat > nat] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_nat ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_nat ) )
             => ( ( ( groups3542108847815614940at_nat @ G @ C5 )
                  = ( groups3542108847815614940at_nat @ H @ C5 ) )
               => ( ( groups3542108847815614940at_nat @ G @ A3 )
                  = ( groups3542108847815614940at_nat @ H @ B3 ) ) ) ) ) ) ) ) ).

% sum.same_carrierI
thf(fact_6737_sum_Osame__carrierI,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > int,H: int > int] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = zero_zero_int ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = zero_zero_int ) )
             => ( ( ( groups4538972089207619220nt_int @ G @ C5 )
                  = ( groups4538972089207619220nt_int @ H @ C5 ) )
               => ( ( groups4538972089207619220nt_int @ G @ A3 )
                  = ( groups4538972089207619220nt_int @ H @ B3 ) ) ) ) ) ) ) ) ).

% sum.same_carrierI
thf(fact_6738_sum_Omono__neutral__left,axiom,
    ! [T4: set_int,S3: set_int,G: int > nat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_nat ) )
         => ( ( groups4541462559716669496nt_nat @ G @ S3 )
            = ( groups4541462559716669496nt_nat @ G @ T4 ) ) ) ) ) ).

% sum.mono_neutral_left
thf(fact_6739_sum_Omono__neutral__left,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_integer] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z3403309356797280102nteger ) )
         => ( ( groups7873554091576472773nteger @ G @ S3 )
            = ( groups7873554091576472773nteger @ G @ T4 ) ) ) ) ) ).

% sum.mono_neutral_left
thf(fact_6740_sum_Omono__neutral__left,axiom,
    ! [T4: set_int,S3: set_int,G: int > rat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_rat ) )
         => ( ( groups3906332499630173760nt_rat @ G @ S3 )
            = ( groups3906332499630173760nt_rat @ G @ T4 ) ) ) ) ) ).

% sum.mono_neutral_left
thf(fact_6741_sum_Omono__neutral__left,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_natural] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z2226904508553997617atural ) )
         => ( ( groups6697149243333190288atural @ G @ S3 )
            = ( groups6697149243333190288atural @ G @ T4 ) ) ) ) ) ).

% sum.mono_neutral_left
thf(fact_6742_sum_Omono__neutral__left,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > int] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_int ) )
         => ( ( groups3539618377306564664at_int @ G @ S3 )
            = ( groups3539618377306564664at_int @ G @ T4 ) ) ) ) ) ).

% sum.mono_neutral_left
thf(fact_6743_sum_Omono__neutral__left,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_integer] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z3403309356797280102nteger ) )
         => ( ( groups7501900531339628137nteger @ G @ S3 )
            = ( groups7501900531339628137nteger @ G @ T4 ) ) ) ) ) ).

% sum.mono_neutral_left
thf(fact_6744_sum_Omono__neutral__left,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > rat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_rat ) )
         => ( ( groups2906978787729119204at_rat @ G @ S3 )
            = ( groups2906978787729119204at_rat @ G @ T4 ) ) ) ) ) ).

% sum.mono_neutral_left
thf(fact_6745_sum_Omono__neutral__left,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_natural] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z2226904508553997617atural ) )
         => ( ( groups6325495683096345652atural @ G @ S3 )
            = ( groups6325495683096345652atural @ G @ T4 ) ) ) ) ) ).

% sum.mono_neutral_left
thf(fact_6746_sum_Omono__neutral__left,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > nat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_nat ) )
         => ( ( groups3542108847815614940at_nat @ G @ S3 )
            = ( groups3542108847815614940at_nat @ G @ T4 ) ) ) ) ) ).

% sum.mono_neutral_left
thf(fact_6747_sum_Omono__neutral__left,axiom,
    ! [T4: set_int,S3: set_int,G: int > int] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_int ) )
         => ( ( groups4538972089207619220nt_int @ G @ S3 )
            = ( groups4538972089207619220nt_int @ G @ T4 ) ) ) ) ) ).

% sum.mono_neutral_left
thf(fact_6748_sum_Omono__neutral__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > nat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_nat ) )
         => ( ( groups4541462559716669496nt_nat @ G @ T4 )
            = ( groups4541462559716669496nt_nat @ G @ S3 ) ) ) ) ) ).

% sum.mono_neutral_right
thf(fact_6749_sum_Omono__neutral__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_integer] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z3403309356797280102nteger ) )
         => ( ( groups7873554091576472773nteger @ G @ T4 )
            = ( groups7873554091576472773nteger @ G @ S3 ) ) ) ) ) ).

% sum.mono_neutral_right
thf(fact_6750_sum_Omono__neutral__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > rat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_rat ) )
         => ( ( groups3906332499630173760nt_rat @ G @ T4 )
            = ( groups3906332499630173760nt_rat @ G @ S3 ) ) ) ) ) ).

% sum.mono_neutral_right
thf(fact_6751_sum_Omono__neutral__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_natural] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z2226904508553997617atural ) )
         => ( ( groups6697149243333190288atural @ G @ T4 )
            = ( groups6697149243333190288atural @ G @ S3 ) ) ) ) ) ).

% sum.mono_neutral_right
thf(fact_6752_sum_Omono__neutral__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > int] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_int ) )
         => ( ( groups3539618377306564664at_int @ G @ T4 )
            = ( groups3539618377306564664at_int @ G @ S3 ) ) ) ) ) ).

% sum.mono_neutral_right
thf(fact_6753_sum_Omono__neutral__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_integer] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z3403309356797280102nteger ) )
         => ( ( groups7501900531339628137nteger @ G @ T4 )
            = ( groups7501900531339628137nteger @ G @ S3 ) ) ) ) ) ).

% sum.mono_neutral_right
thf(fact_6754_sum_Omono__neutral__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > rat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_rat ) )
         => ( ( groups2906978787729119204at_rat @ G @ T4 )
            = ( groups2906978787729119204at_rat @ G @ S3 ) ) ) ) ) ).

% sum.mono_neutral_right
thf(fact_6755_sum_Omono__neutral__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_natural] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z2226904508553997617atural ) )
         => ( ( groups6325495683096345652atural @ G @ T4 )
            = ( groups6325495683096345652atural @ G @ S3 ) ) ) ) ) ).

% sum.mono_neutral_right
thf(fact_6756_sum_Omono__neutral__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > nat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_nat ) )
         => ( ( groups3542108847815614940at_nat @ G @ T4 )
            = ( groups3542108847815614940at_nat @ G @ S3 ) ) ) ) ) ).

% sum.mono_neutral_right
thf(fact_6757_sum_Omono__neutral__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > int] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_int ) )
         => ( ( groups4538972089207619220nt_int @ G @ T4 )
            = ( groups4538972089207619220nt_int @ G @ S3 ) ) ) ) ) ).

% sum.mono_neutral_right
thf(fact_6758_sum_Omono__neutral__cong__left,axiom,
    ! [T4: set_int,S3: set_int,H: int > nat,G: int > nat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = zero_zero_nat ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups4541462559716669496nt_nat @ G @ S3 )
              = ( groups4541462559716669496nt_nat @ H @ T4 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_left
thf(fact_6759_sum_Omono__neutral__cong__left,axiom,
    ! [T4: set_int,S3: set_int,H: int > code_integer,G: int > code_integer] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = zero_z3403309356797280102nteger ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups7873554091576472773nteger @ G @ S3 )
              = ( groups7873554091576472773nteger @ H @ T4 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_left
thf(fact_6760_sum_Omono__neutral__cong__left,axiom,
    ! [T4: set_int,S3: set_int,H: int > rat,G: int > rat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = zero_zero_rat ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups3906332499630173760nt_rat @ G @ S3 )
              = ( groups3906332499630173760nt_rat @ H @ T4 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_left
thf(fact_6761_sum_Omono__neutral__cong__left,axiom,
    ! [T4: set_int,S3: set_int,H: int > code_natural,G: int > code_natural] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = zero_z2226904508553997617atural ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups6697149243333190288atural @ G @ S3 )
              = ( groups6697149243333190288atural @ H @ T4 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_left
thf(fact_6762_sum_Omono__neutral__cong__left,axiom,
    ! [T4: set_nat,S3: set_nat,H: nat > int,G: nat > int] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = zero_zero_int ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups3539618377306564664at_int @ G @ S3 )
              = ( groups3539618377306564664at_int @ H @ T4 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_left
thf(fact_6763_sum_Omono__neutral__cong__left,axiom,
    ! [T4: set_nat,S3: set_nat,H: nat > code_integer,G: nat > code_integer] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = zero_z3403309356797280102nteger ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups7501900531339628137nteger @ G @ S3 )
              = ( groups7501900531339628137nteger @ H @ T4 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_left
thf(fact_6764_sum_Omono__neutral__cong__left,axiom,
    ! [T4: set_nat,S3: set_nat,H: nat > rat,G: nat > rat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = zero_zero_rat ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups2906978787729119204at_rat @ G @ S3 )
              = ( groups2906978787729119204at_rat @ H @ T4 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_left
thf(fact_6765_sum_Omono__neutral__cong__left,axiom,
    ! [T4: set_nat,S3: set_nat,H: nat > code_natural,G: nat > code_natural] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = zero_z2226904508553997617atural ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups6325495683096345652atural @ G @ S3 )
              = ( groups6325495683096345652atural @ H @ T4 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_left
thf(fact_6766_sum_Omono__neutral__cong__left,axiom,
    ! [T4: set_nat,S3: set_nat,H: nat > nat,G: nat > nat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = zero_zero_nat ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups3542108847815614940at_nat @ G @ S3 )
              = ( groups3542108847815614940at_nat @ H @ T4 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_left
thf(fact_6767_sum_Omono__neutral__cong__left,axiom,
    ! [T4: set_int,S3: set_int,H: int > int,G: int > int] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = zero_zero_int ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups4538972089207619220nt_int @ G @ S3 )
              = ( groups4538972089207619220nt_int @ H @ T4 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_left
thf(fact_6768_sum_Omono__neutral__cong__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > nat,H: int > nat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_nat ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups4541462559716669496nt_nat @ G @ T4 )
              = ( groups4541462559716669496nt_nat @ H @ S3 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_right
thf(fact_6769_sum_Omono__neutral__cong__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_integer,H: int > code_integer] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z3403309356797280102nteger ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups7873554091576472773nteger @ G @ T4 )
              = ( groups7873554091576472773nteger @ H @ S3 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_right
thf(fact_6770_sum_Omono__neutral__cong__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > rat,H: int > rat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_rat ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups3906332499630173760nt_rat @ G @ T4 )
              = ( groups3906332499630173760nt_rat @ H @ S3 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_right
thf(fact_6771_sum_Omono__neutral__cong__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_natural,H: int > code_natural] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z2226904508553997617atural ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups6697149243333190288atural @ G @ T4 )
              = ( groups6697149243333190288atural @ H @ S3 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_right
thf(fact_6772_sum_Omono__neutral__cong__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > int,H: nat > int] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_int ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups3539618377306564664at_int @ G @ T4 )
              = ( groups3539618377306564664at_int @ H @ S3 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_right
thf(fact_6773_sum_Omono__neutral__cong__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_integer,H: nat > code_integer] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z3403309356797280102nteger ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups7501900531339628137nteger @ G @ T4 )
              = ( groups7501900531339628137nteger @ H @ S3 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_right
thf(fact_6774_sum_Omono__neutral__cong__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > rat,H: nat > rat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_rat ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups2906978787729119204at_rat @ G @ T4 )
              = ( groups2906978787729119204at_rat @ H @ S3 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_right
thf(fact_6775_sum_Omono__neutral__cong__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_natural,H: nat > code_natural] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_z2226904508553997617atural ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups6325495683096345652atural @ G @ T4 )
              = ( groups6325495683096345652atural @ H @ S3 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_right
thf(fact_6776_sum_Omono__neutral__cong__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > nat,H: nat > nat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_nat ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups3542108847815614940at_nat @ G @ T4 )
              = ( groups3542108847815614940at_nat @ H @ S3 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_right
thf(fact_6777_sum_Omono__neutral__cong__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > int,H: int > int] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = zero_zero_int ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups4538972089207619220nt_int @ G @ T4 )
              = ( groups4538972089207619220nt_int @ H @ S3 ) ) ) ) ) ) ).

% sum.mono_neutral_cong_right
thf(fact_6778_prod_Orelated,axiom,
    ! [R5: code_natural > code_natural > $o,S3: set_nat,H: nat > code_natural,G: nat > code_natural] :
      ( ( R5 @ one_one_Code_natural @ one_one_Code_natural )
     => ( ! [X13: code_natural,Y12: code_natural,X22: code_natural,Y22: code_natural] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( times_2397367101498566445atural @ X13 @ Y12 ) @ ( times_2397367101498566445atural @ X22 @ Y22 ) ) )
       => ( ( finite_finite_nat @ S3 )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups2279045934846249631atural @ H @ S3 ) @ ( groups2279045934846249631atural @ G @ S3 ) ) ) ) ) ) ).

% prod.related
thf(fact_6779_prod_Orelated,axiom,
    ! [R5: code_natural > code_natural > $o,S3: set_int,H: int > code_natural,G: int > code_natural] :
      ( ( R5 @ one_one_Code_natural @ one_one_Code_natural )
     => ( ! [X13: code_natural,Y12: code_natural,X22: code_natural,Y22: code_natural] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( times_2397367101498566445atural @ X13 @ Y12 ) @ ( times_2397367101498566445atural @ X22 @ Y22 ) ) )
       => ( ( finite_finite_int @ S3 )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups2650699495083094267atural @ H @ S3 ) @ ( groups2650699495083094267atural @ G @ S3 ) ) ) ) ) ) ).

% prod.related
thf(fact_6780_prod_Orelated,axiom,
    ! [R5: nat > nat > $o,S3: set_int,H: int > nat,G: int > nat] :
      ( ( R5 @ one_one_nat @ one_one_nat )
     => ( ! [X13: nat,Y12: nat,X22: nat,Y22: nat] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( times_times_nat @ X13 @ Y12 ) @ ( times_times_nat @ X22 @ Y22 ) ) )
       => ( ( finite_finite_int @ S3 )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups1707563613775114915nt_nat @ H @ S3 ) @ ( groups1707563613775114915nt_nat @ G @ S3 ) ) ) ) ) ) ).

% prod.related
thf(fact_6781_prod_Orelated,axiom,
    ! [R5: code_integer > code_integer > $o,S3: set_nat,H: nat > code_integer,G: nat > code_integer] :
      ( ( R5 @ one_one_Code_integer @ one_one_Code_integer )
     => ( ! [X13: code_integer,Y12: code_integer,X22: code_integer,Y22: code_integer] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( times_3573771949741848930nteger @ X13 @ Y12 ) @ ( times_3573771949741848930nteger @ X22 @ Y22 ) ) )
       => ( ( finite_finite_nat @ S3 )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups3455450783089532116nteger @ H @ S3 ) @ ( groups3455450783089532116nteger @ G @ S3 ) ) ) ) ) ) ).

% prod.related
thf(fact_6782_prod_Orelated,axiom,
    ! [R5: code_integer > code_integer > $o,S3: set_int,H: int > code_integer,G: int > code_integer] :
      ( ( R5 @ one_one_Code_integer @ one_one_Code_integer )
     => ( ! [X13: code_integer,Y12: code_integer,X22: code_integer,Y22: code_integer] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( times_3573771949741848930nteger @ X13 @ Y12 ) @ ( times_3573771949741848930nteger @ X22 @ Y22 ) ) )
       => ( ( finite_finite_int @ S3 )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups3827104343326376752nteger @ H @ S3 ) @ ( groups3827104343326376752nteger @ G @ S3 ) ) ) ) ) ) ).

% prod.related
thf(fact_6783_prod_Orelated,axiom,
    ! [R5: rat > rat > $o,S3: set_nat,H: nat > rat,G: nat > rat] :
      ( ( R5 @ one_one_rat @ one_one_rat )
     => ( ! [X13: rat,Y12: rat,X22: rat,Y22: rat] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( times_times_rat @ X13 @ Y12 ) @ ( times_times_rat @ X22 @ Y22 ) ) )
       => ( ( finite_finite_nat @ S3 )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups73079841787564623at_rat @ H @ S3 ) @ ( groups73079841787564623at_rat @ G @ S3 ) ) ) ) ) ) ).

% prod.related
thf(fact_6784_prod_Orelated,axiom,
    ! [R5: rat > rat > $o,S3: set_int,H: int > rat,G: int > rat] :
      ( ( R5 @ one_one_rat @ one_one_rat )
     => ( ! [X13: rat,Y12: rat,X22: rat,Y22: rat] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( times_times_rat @ X13 @ Y12 ) @ ( times_times_rat @ X22 @ Y22 ) ) )
       => ( ( finite_finite_int @ S3 )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups1072433553688619179nt_rat @ H @ S3 ) @ ( groups1072433553688619179nt_rat @ G @ S3 ) ) ) ) ) ) ).

% prod.related
thf(fact_6785_prod_Orelated,axiom,
    ! [R5: nat > nat > $o,S3: set_nat,H: nat > nat,G: nat > nat] :
      ( ( R5 @ one_one_nat @ one_one_nat )
     => ( ! [X13: nat,Y12: nat,X22: nat,Y22: nat] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( times_times_nat @ X13 @ Y12 ) @ ( times_times_nat @ X22 @ Y22 ) ) )
       => ( ( finite_finite_nat @ S3 )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups708209901874060359at_nat @ H @ S3 ) @ ( groups708209901874060359at_nat @ G @ S3 ) ) ) ) ) ) ).

% prod.related
thf(fact_6786_prod_Orelated,axiom,
    ! [R5: int > int > $o,S3: set_nat,H: nat > int,G: nat > int] :
      ( ( R5 @ one_one_int @ one_one_int )
     => ( ! [X13: int,Y12: int,X22: int,Y22: int] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( times_times_int @ X13 @ Y12 ) @ ( times_times_int @ X22 @ Y22 ) ) )
       => ( ( finite_finite_nat @ S3 )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups705719431365010083at_int @ H @ S3 ) @ ( groups705719431365010083at_int @ G @ S3 ) ) ) ) ) ) ).

% prod.related
thf(fact_6787_prod_Orelated,axiom,
    ! [R5: int > int > $o,S3: set_int,H: int > int,G: int > int] :
      ( ( R5 @ one_one_int @ one_one_int )
     => ( ! [X13: int,Y12: int,X22: int,Y22: int] :
            ( ( ( R5 @ X13 @ X22 )
              & ( R5 @ Y12 @ Y22 ) )
           => ( R5 @ ( times_times_int @ X13 @ Y12 ) @ ( times_times_int @ X22 @ Y22 ) ) )
       => ( ( finite_finite_int @ S3 )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( R5 @ ( H @ X5 ) @ ( G @ X5 ) ) )
           => ( R5 @ ( groups1705073143266064639nt_int @ H @ S3 ) @ ( groups1705073143266064639nt_int @ G @ S3 ) ) ) ) ) ) ).

% prod.related
thf(fact_6788_sum_Osubset__diff,axiom,
    ! [B3: set_int,A3: set_int,G: int > rat] :
      ( ( ord_less_eq_set_int @ B3 @ A3 )
     => ( ( finite_finite_int @ A3 )
       => ( ( groups3906332499630173760nt_rat @ G @ A3 )
          = ( plus_plus_rat @ ( groups3906332499630173760nt_rat @ G @ ( minus_minus_set_int @ A3 @ B3 ) ) @ ( groups3906332499630173760nt_rat @ G @ B3 ) ) ) ) ) ).

% sum.subset_diff
thf(fact_6789_sum_Osubset__diff,axiom,
    ! [B3: set_Pr1261947904930325089at_nat,A3: set_Pr1261947904930325089at_nat,G: product_prod_nat_nat > rat] :
      ( ( ord_le3146513528884898305at_nat @ B3 @ A3 )
     => ( ( finite6177210948735845034at_nat @ A3 )
       => ( ( groups342789780944988191at_rat @ G @ A3 )
          = ( plus_plus_rat @ ( groups342789780944988191at_rat @ G @ ( minus_1356011639430497352at_nat @ A3 @ B3 ) ) @ ( groups342789780944988191at_rat @ G @ B3 ) ) ) ) ) ).

% sum.subset_diff
thf(fact_6790_sum_Osubset__diff,axiom,
    ! [B3: set_int,A3: set_int,G: int > nat] :
      ( ( ord_less_eq_set_int @ B3 @ A3 )
     => ( ( finite_finite_int @ A3 )
       => ( ( groups4541462559716669496nt_nat @ G @ A3 )
          = ( plus_plus_nat @ ( groups4541462559716669496nt_nat @ G @ ( minus_minus_set_int @ A3 @ B3 ) ) @ ( groups4541462559716669496nt_nat @ G @ B3 ) ) ) ) ) ).

% sum.subset_diff
thf(fact_6791_sum_Osubset__diff,axiom,
    ! [B3: set_Pr1261947904930325089at_nat,A3: set_Pr1261947904930325089at_nat,G: product_prod_nat_nat > nat] :
      ( ( ord_le3146513528884898305at_nat @ B3 @ A3 )
     => ( ( finite6177210948735845034at_nat @ A3 )
       => ( ( groups977919841031483927at_nat @ G @ A3 )
          = ( plus_plus_nat @ ( groups977919841031483927at_nat @ G @ ( minus_1356011639430497352at_nat @ A3 @ B3 ) ) @ ( groups977919841031483927at_nat @ G @ B3 ) ) ) ) ) ).

% sum.subset_diff
thf(fact_6792_sum_Osubset__diff,axiom,
    ! [B3: set_Pr1261947904930325089at_nat,A3: set_Pr1261947904930325089at_nat,G: product_prod_nat_nat > int] :
      ( ( ord_le3146513528884898305at_nat @ B3 @ A3 )
     => ( ( finite6177210948735845034at_nat @ A3 )
       => ( ( groups975429370522433651at_int @ G @ A3 )
          = ( plus_plus_int @ ( groups975429370522433651at_int @ G @ ( minus_1356011639430497352at_nat @ A3 @ B3 ) ) @ ( groups975429370522433651at_int @ G @ B3 ) ) ) ) ) ).

% sum.subset_diff
thf(fact_6793_sum_Osubset__diff,axiom,
    ! [B3: set_nat,A3: set_nat,G: nat > rat] :
      ( ( ord_less_eq_set_nat @ B3 @ A3 )
     => ( ( finite_finite_nat @ A3 )
       => ( ( groups2906978787729119204at_rat @ G @ A3 )
          = ( plus_plus_rat @ ( groups2906978787729119204at_rat @ G @ ( minus_minus_set_nat @ A3 @ B3 ) ) @ ( groups2906978787729119204at_rat @ G @ B3 ) ) ) ) ) ).

% sum.subset_diff
thf(fact_6794_sum_Osubset__diff,axiom,
    ! [B3: set_nat,A3: set_nat,G: nat > int] :
      ( ( ord_less_eq_set_nat @ B3 @ A3 )
     => ( ( finite_finite_nat @ A3 )
       => ( ( groups3539618377306564664at_int @ G @ A3 )
          = ( plus_plus_int @ ( groups3539618377306564664at_int @ G @ ( minus_minus_set_nat @ A3 @ B3 ) ) @ ( groups3539618377306564664at_int @ G @ B3 ) ) ) ) ) ).

% sum.subset_diff
thf(fact_6795_sum_Osubset__diff,axiom,
    ! [B3: set_nat,A3: set_nat,G: nat > nat] :
      ( ( ord_less_eq_set_nat @ B3 @ A3 )
     => ( ( finite_finite_nat @ A3 )
       => ( ( groups3542108847815614940at_nat @ G @ A3 )
          = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ G @ ( minus_minus_set_nat @ A3 @ B3 ) ) @ ( groups3542108847815614940at_nat @ G @ B3 ) ) ) ) ) ).

% sum.subset_diff
thf(fact_6796_sum_Osubset__diff,axiom,
    ! [B3: set_int,A3: set_int,G: int > int] :
      ( ( ord_less_eq_set_int @ B3 @ A3 )
     => ( ( finite_finite_int @ A3 )
       => ( ( groups4538972089207619220nt_int @ G @ A3 )
          = ( plus_plus_int @ ( groups4538972089207619220nt_int @ G @ ( minus_minus_set_int @ A3 @ B3 ) ) @ ( groups4538972089207619220nt_int @ G @ B3 ) ) ) ) ) ).

% sum.subset_diff
thf(fact_6797_prod_Osame__carrier,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > nat,H: int > nat] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_nat ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_nat ) )
             => ( ( ( groups1707563613775114915nt_nat @ G @ A3 )
                  = ( groups1707563613775114915nt_nat @ H @ B3 ) )
                = ( ( groups1707563613775114915nt_nat @ G @ C5 )
                  = ( groups1707563613775114915nt_nat @ H @ C5 ) ) ) ) ) ) ) ) ).

% prod.same_carrier
thf(fact_6798_prod_Osame__carrier,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > code_integer,H: int > code_integer] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_Code_integer ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_Code_integer ) )
             => ( ( ( groups3827104343326376752nteger @ G @ A3 )
                  = ( groups3827104343326376752nteger @ H @ B3 ) )
                = ( ( groups3827104343326376752nteger @ G @ C5 )
                  = ( groups3827104343326376752nteger @ H @ C5 ) ) ) ) ) ) ) ) ).

% prod.same_carrier
thf(fact_6799_prod_Osame__carrier,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > rat,H: int > rat] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_rat ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_rat ) )
             => ( ( ( groups1072433553688619179nt_rat @ G @ A3 )
                  = ( groups1072433553688619179nt_rat @ H @ B3 ) )
                = ( ( groups1072433553688619179nt_rat @ G @ C5 )
                  = ( groups1072433553688619179nt_rat @ H @ C5 ) ) ) ) ) ) ) ) ).

% prod.same_carrier
thf(fact_6800_prod_Osame__carrier,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > code_natural,H: int > code_natural] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_Code_natural ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_Code_natural ) )
             => ( ( ( groups2650699495083094267atural @ G @ A3 )
                  = ( groups2650699495083094267atural @ H @ B3 ) )
                = ( ( groups2650699495083094267atural @ G @ C5 )
                  = ( groups2650699495083094267atural @ H @ C5 ) ) ) ) ) ) ) ) ).

% prod.same_carrier
thf(fact_6801_prod_Osame__carrier,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > code_integer,H: nat > code_integer] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_Code_integer ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_Code_integer ) )
             => ( ( ( groups3455450783089532116nteger @ G @ A3 )
                  = ( groups3455450783089532116nteger @ H @ B3 ) )
                = ( ( groups3455450783089532116nteger @ G @ C5 )
                  = ( groups3455450783089532116nteger @ H @ C5 ) ) ) ) ) ) ) ) ).

% prod.same_carrier
thf(fact_6802_prod_Osame__carrier,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > rat,H: nat > rat] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_rat ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_rat ) )
             => ( ( ( groups73079841787564623at_rat @ G @ A3 )
                  = ( groups73079841787564623at_rat @ H @ B3 ) )
                = ( ( groups73079841787564623at_rat @ G @ C5 )
                  = ( groups73079841787564623at_rat @ H @ C5 ) ) ) ) ) ) ) ) ).

% prod.same_carrier
thf(fact_6803_prod_Osame__carrier,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > code_natural,H: nat > code_natural] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_Code_natural ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_Code_natural ) )
             => ( ( ( groups2279045934846249631atural @ G @ A3 )
                  = ( groups2279045934846249631atural @ H @ B3 ) )
                = ( ( groups2279045934846249631atural @ G @ C5 )
                  = ( groups2279045934846249631atural @ H @ C5 ) ) ) ) ) ) ) ) ).

% prod.same_carrier
thf(fact_6804_prod_Osame__carrier,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > nat,H: nat > nat] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_nat ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_nat ) )
             => ( ( ( groups708209901874060359at_nat @ G @ A3 )
                  = ( groups708209901874060359at_nat @ H @ B3 ) )
                = ( ( groups708209901874060359at_nat @ G @ C5 )
                  = ( groups708209901874060359at_nat @ H @ C5 ) ) ) ) ) ) ) ) ).

% prod.same_carrier
thf(fact_6805_prod_Osame__carrier,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > int,H: nat > int] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_int ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_int ) )
             => ( ( ( groups705719431365010083at_int @ G @ A3 )
                  = ( groups705719431365010083at_int @ H @ B3 ) )
                = ( ( groups705719431365010083at_int @ G @ C5 )
                  = ( groups705719431365010083at_int @ H @ C5 ) ) ) ) ) ) ) ) ).

% prod.same_carrier
thf(fact_6806_prod_Osame__carrier,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > int,H: int > int] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_int ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_int ) )
             => ( ( ( groups1705073143266064639nt_int @ G @ A3 )
                  = ( groups1705073143266064639nt_int @ H @ B3 ) )
                = ( ( groups1705073143266064639nt_int @ G @ C5 )
                  = ( groups1705073143266064639nt_int @ H @ C5 ) ) ) ) ) ) ) ) ).

% prod.same_carrier
thf(fact_6807_prod_Osame__carrierI,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > nat,H: int > nat] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_nat ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_nat ) )
             => ( ( ( groups1707563613775114915nt_nat @ G @ C5 )
                  = ( groups1707563613775114915nt_nat @ H @ C5 ) )
               => ( ( groups1707563613775114915nt_nat @ G @ A3 )
                  = ( groups1707563613775114915nt_nat @ H @ B3 ) ) ) ) ) ) ) ) ).

% prod.same_carrierI
thf(fact_6808_prod_Osame__carrierI,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > code_integer,H: int > code_integer] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_Code_integer ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_Code_integer ) )
             => ( ( ( groups3827104343326376752nteger @ G @ C5 )
                  = ( groups3827104343326376752nteger @ H @ C5 ) )
               => ( ( groups3827104343326376752nteger @ G @ A3 )
                  = ( groups3827104343326376752nteger @ H @ B3 ) ) ) ) ) ) ) ) ).

% prod.same_carrierI
thf(fact_6809_prod_Osame__carrierI,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > rat,H: int > rat] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_rat ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_rat ) )
             => ( ( ( groups1072433553688619179nt_rat @ G @ C5 )
                  = ( groups1072433553688619179nt_rat @ H @ C5 ) )
               => ( ( groups1072433553688619179nt_rat @ G @ A3 )
                  = ( groups1072433553688619179nt_rat @ H @ B3 ) ) ) ) ) ) ) ) ).

% prod.same_carrierI
thf(fact_6810_prod_Osame__carrierI,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > code_natural,H: int > code_natural] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_Code_natural ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_Code_natural ) )
             => ( ( ( groups2650699495083094267atural @ G @ C5 )
                  = ( groups2650699495083094267atural @ H @ C5 ) )
               => ( ( groups2650699495083094267atural @ G @ A3 )
                  = ( groups2650699495083094267atural @ H @ B3 ) ) ) ) ) ) ) ) ).

% prod.same_carrierI
thf(fact_6811_prod_Osame__carrierI,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > code_integer,H: nat > code_integer] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_Code_integer ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_Code_integer ) )
             => ( ( ( groups3455450783089532116nteger @ G @ C5 )
                  = ( groups3455450783089532116nteger @ H @ C5 ) )
               => ( ( groups3455450783089532116nteger @ G @ A3 )
                  = ( groups3455450783089532116nteger @ H @ B3 ) ) ) ) ) ) ) ) ).

% prod.same_carrierI
thf(fact_6812_prod_Osame__carrierI,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > rat,H: nat > rat] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_rat ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_rat ) )
             => ( ( ( groups73079841787564623at_rat @ G @ C5 )
                  = ( groups73079841787564623at_rat @ H @ C5 ) )
               => ( ( groups73079841787564623at_rat @ G @ A3 )
                  = ( groups73079841787564623at_rat @ H @ B3 ) ) ) ) ) ) ) ) ).

% prod.same_carrierI
thf(fact_6813_prod_Osame__carrierI,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > code_natural,H: nat > code_natural] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_Code_natural ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_Code_natural ) )
             => ( ( ( groups2279045934846249631atural @ G @ C5 )
                  = ( groups2279045934846249631atural @ H @ C5 ) )
               => ( ( groups2279045934846249631atural @ G @ A3 )
                  = ( groups2279045934846249631atural @ H @ B3 ) ) ) ) ) ) ) ) ).

% prod.same_carrierI
thf(fact_6814_prod_Osame__carrierI,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > nat,H: nat > nat] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_nat ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_nat ) )
             => ( ( ( groups708209901874060359at_nat @ G @ C5 )
                  = ( groups708209901874060359at_nat @ H @ C5 ) )
               => ( ( groups708209901874060359at_nat @ G @ A3 )
                  = ( groups708209901874060359at_nat @ H @ B3 ) ) ) ) ) ) ) ) ).

% prod.same_carrierI
thf(fact_6815_prod_Osame__carrierI,axiom,
    ! [C5: set_nat,A3: set_nat,B3: set_nat,G: nat > int,H: nat > int] :
      ( ( finite_finite_nat @ C5 )
     => ( ( ord_less_eq_set_nat @ A3 @ C5 )
       => ( ( ord_less_eq_set_nat @ B3 @ C5 )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ ( minus_minus_set_nat @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_int ) )
           => ( ! [B2: nat] :
                  ( ( member_nat @ B2 @ ( minus_minus_set_nat @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_int ) )
             => ( ( ( groups705719431365010083at_int @ G @ C5 )
                  = ( groups705719431365010083at_int @ H @ C5 ) )
               => ( ( groups705719431365010083at_int @ G @ A3 )
                  = ( groups705719431365010083at_int @ H @ B3 ) ) ) ) ) ) ) ) ).

% prod.same_carrierI
thf(fact_6816_prod_Osame__carrierI,axiom,
    ! [C5: set_int,A3: set_int,B3: set_int,G: int > int,H: int > int] :
      ( ( finite_finite_int @ C5 )
     => ( ( ord_less_eq_set_int @ A3 @ C5 )
       => ( ( ord_less_eq_set_int @ B3 @ C5 )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ ( minus_minus_set_int @ C5 @ A3 ) )
               => ( ( G @ A2 )
                  = one_one_int ) )
           => ( ! [B2: int] :
                  ( ( member_int @ B2 @ ( minus_minus_set_int @ C5 @ B3 ) )
                 => ( ( H @ B2 )
                    = one_one_int ) )
             => ( ( ( groups1705073143266064639nt_int @ G @ C5 )
                  = ( groups1705073143266064639nt_int @ H @ C5 ) )
               => ( ( groups1705073143266064639nt_int @ G @ A3 )
                  = ( groups1705073143266064639nt_int @ H @ B3 ) ) ) ) ) ) ) ) ).

% prod.same_carrierI
thf(fact_6817_prod_Omono__neutral__left,axiom,
    ! [T4: set_int,S3: set_int,G: int > nat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_nat ) )
         => ( ( groups1707563613775114915nt_nat @ G @ S3 )
            = ( groups1707563613775114915nt_nat @ G @ T4 ) ) ) ) ) ).

% prod.mono_neutral_left
thf(fact_6818_prod_Omono__neutral__left,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_integer] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_integer ) )
         => ( ( groups3827104343326376752nteger @ G @ S3 )
            = ( groups3827104343326376752nteger @ G @ T4 ) ) ) ) ) ).

% prod.mono_neutral_left
thf(fact_6819_prod_Omono__neutral__left,axiom,
    ! [T4: set_int,S3: set_int,G: int > rat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_rat ) )
         => ( ( groups1072433553688619179nt_rat @ G @ S3 )
            = ( groups1072433553688619179nt_rat @ G @ T4 ) ) ) ) ) ).

% prod.mono_neutral_left
thf(fact_6820_prod_Omono__neutral__left,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_natural] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_natural ) )
         => ( ( groups2650699495083094267atural @ G @ S3 )
            = ( groups2650699495083094267atural @ G @ T4 ) ) ) ) ) ).

% prod.mono_neutral_left
thf(fact_6821_prod_Omono__neutral__left,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_integer] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_integer ) )
         => ( ( groups3455450783089532116nteger @ G @ S3 )
            = ( groups3455450783089532116nteger @ G @ T4 ) ) ) ) ) ).

% prod.mono_neutral_left
thf(fact_6822_prod_Omono__neutral__left,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > rat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_rat ) )
         => ( ( groups73079841787564623at_rat @ G @ S3 )
            = ( groups73079841787564623at_rat @ G @ T4 ) ) ) ) ) ).

% prod.mono_neutral_left
thf(fact_6823_prod_Omono__neutral__left,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_natural] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_natural ) )
         => ( ( groups2279045934846249631atural @ G @ S3 )
            = ( groups2279045934846249631atural @ G @ T4 ) ) ) ) ) ).

% prod.mono_neutral_left
thf(fact_6824_prod_Omono__neutral__left,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > nat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_nat ) )
         => ( ( groups708209901874060359at_nat @ G @ S3 )
            = ( groups708209901874060359at_nat @ G @ T4 ) ) ) ) ) ).

% prod.mono_neutral_left
thf(fact_6825_prod_Omono__neutral__left,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > int] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_int ) )
         => ( ( groups705719431365010083at_int @ G @ S3 )
            = ( groups705719431365010083at_int @ G @ T4 ) ) ) ) ) ).

% prod.mono_neutral_left
thf(fact_6826_prod_Omono__neutral__left,axiom,
    ! [T4: set_int,S3: set_int,G: int > int] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_int ) )
         => ( ( groups1705073143266064639nt_int @ G @ S3 )
            = ( groups1705073143266064639nt_int @ G @ T4 ) ) ) ) ) ).

% prod.mono_neutral_left
thf(fact_6827_prod_Omono__neutral__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > nat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_nat ) )
         => ( ( groups1707563613775114915nt_nat @ G @ T4 )
            = ( groups1707563613775114915nt_nat @ G @ S3 ) ) ) ) ) ).

% prod.mono_neutral_right
thf(fact_6828_prod_Omono__neutral__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_integer] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_integer ) )
         => ( ( groups3827104343326376752nteger @ G @ T4 )
            = ( groups3827104343326376752nteger @ G @ S3 ) ) ) ) ) ).

% prod.mono_neutral_right
thf(fact_6829_prod_Omono__neutral__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > rat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_rat ) )
         => ( ( groups1072433553688619179nt_rat @ G @ T4 )
            = ( groups1072433553688619179nt_rat @ G @ S3 ) ) ) ) ) ).

% prod.mono_neutral_right
thf(fact_6830_prod_Omono__neutral__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_natural] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_natural ) )
         => ( ( groups2650699495083094267atural @ G @ T4 )
            = ( groups2650699495083094267atural @ G @ S3 ) ) ) ) ) ).

% prod.mono_neutral_right
thf(fact_6831_prod_Omono__neutral__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_integer] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_integer ) )
         => ( ( groups3455450783089532116nteger @ G @ T4 )
            = ( groups3455450783089532116nteger @ G @ S3 ) ) ) ) ) ).

% prod.mono_neutral_right
thf(fact_6832_prod_Omono__neutral__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > rat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_rat ) )
         => ( ( groups73079841787564623at_rat @ G @ T4 )
            = ( groups73079841787564623at_rat @ G @ S3 ) ) ) ) ) ).

% prod.mono_neutral_right
thf(fact_6833_prod_Omono__neutral__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_natural] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_natural ) )
         => ( ( groups2279045934846249631atural @ G @ T4 )
            = ( groups2279045934846249631atural @ G @ S3 ) ) ) ) ) ).

% prod.mono_neutral_right
thf(fact_6834_prod_Omono__neutral__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > nat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_nat ) )
         => ( ( groups708209901874060359at_nat @ G @ T4 )
            = ( groups708209901874060359at_nat @ G @ S3 ) ) ) ) ) ).

% prod.mono_neutral_right
thf(fact_6835_prod_Omono__neutral__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > int] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_int ) )
         => ( ( groups705719431365010083at_int @ G @ T4 )
            = ( groups705719431365010083at_int @ G @ S3 ) ) ) ) ) ).

% prod.mono_neutral_right
thf(fact_6836_prod_Omono__neutral__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > int] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_int ) )
         => ( ( groups1705073143266064639nt_int @ G @ T4 )
            = ( groups1705073143266064639nt_int @ G @ S3 ) ) ) ) ) ).

% prod.mono_neutral_right
thf(fact_6837_prod_Omono__neutral__cong__left,axiom,
    ! [T4: set_int,S3: set_int,H: int > nat,G: int > nat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = one_one_nat ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups1707563613775114915nt_nat @ G @ S3 )
              = ( groups1707563613775114915nt_nat @ H @ T4 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_left
thf(fact_6838_prod_Omono__neutral__cong__left,axiom,
    ! [T4: set_int,S3: set_int,H: int > code_integer,G: int > code_integer] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = one_one_Code_integer ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups3827104343326376752nteger @ G @ S3 )
              = ( groups3827104343326376752nteger @ H @ T4 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_left
thf(fact_6839_prod_Omono__neutral__cong__left,axiom,
    ! [T4: set_int,S3: set_int,H: int > rat,G: int > rat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = one_one_rat ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups1072433553688619179nt_rat @ G @ S3 )
              = ( groups1072433553688619179nt_rat @ H @ T4 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_left
thf(fact_6840_prod_Omono__neutral__cong__left,axiom,
    ! [T4: set_int,S3: set_int,H: int > code_natural,G: int > code_natural] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = one_one_Code_natural ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups2650699495083094267atural @ G @ S3 )
              = ( groups2650699495083094267atural @ H @ T4 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_left
thf(fact_6841_prod_Omono__neutral__cong__left,axiom,
    ! [T4: set_nat,S3: set_nat,H: nat > code_integer,G: nat > code_integer] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = one_one_Code_integer ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups3455450783089532116nteger @ G @ S3 )
              = ( groups3455450783089532116nteger @ H @ T4 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_left
thf(fact_6842_prod_Omono__neutral__cong__left,axiom,
    ! [T4: set_nat,S3: set_nat,H: nat > rat,G: nat > rat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = one_one_rat ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups73079841787564623at_rat @ G @ S3 )
              = ( groups73079841787564623at_rat @ H @ T4 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_left
thf(fact_6843_prod_Omono__neutral__cong__left,axiom,
    ! [T4: set_nat,S3: set_nat,H: nat > code_natural,G: nat > code_natural] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = one_one_Code_natural ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups2279045934846249631atural @ G @ S3 )
              = ( groups2279045934846249631atural @ H @ T4 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_left
thf(fact_6844_prod_Omono__neutral__cong__left,axiom,
    ! [T4: set_nat,S3: set_nat,H: nat > nat,G: nat > nat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = one_one_nat ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups708209901874060359at_nat @ G @ S3 )
              = ( groups708209901874060359at_nat @ H @ T4 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_left
thf(fact_6845_prod_Omono__neutral__cong__left,axiom,
    ! [T4: set_nat,S3: set_nat,H: nat > int,G: nat > int] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = one_one_int ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups705719431365010083at_int @ G @ S3 )
              = ( groups705719431365010083at_int @ H @ T4 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_left
thf(fact_6846_prod_Omono__neutral__cong__left,axiom,
    ! [T4: set_int,S3: set_int,H: int > int,G: int > int] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( H @ X5 )
                = one_one_int ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups1705073143266064639nt_int @ G @ S3 )
              = ( groups1705073143266064639nt_int @ H @ T4 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_left
thf(fact_6847_prod_Omono__neutral__cong__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > nat,H: int > nat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_nat ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups1707563613775114915nt_nat @ G @ T4 )
              = ( groups1707563613775114915nt_nat @ H @ S3 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_right
thf(fact_6848_prod_Omono__neutral__cong__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_integer,H: int > code_integer] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_integer ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups3827104343326376752nteger @ G @ T4 )
              = ( groups3827104343326376752nteger @ H @ S3 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_right
thf(fact_6849_prod_Omono__neutral__cong__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > rat,H: int > rat] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_rat ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups1072433553688619179nt_rat @ G @ T4 )
              = ( groups1072433553688619179nt_rat @ H @ S3 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_right
thf(fact_6850_prod_Omono__neutral__cong__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > code_natural,H: int > code_natural] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_natural ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups2650699495083094267atural @ G @ T4 )
              = ( groups2650699495083094267atural @ H @ S3 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_right
thf(fact_6851_prod_Omono__neutral__cong__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_integer,H: nat > code_integer] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_integer ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups3455450783089532116nteger @ G @ T4 )
              = ( groups3455450783089532116nteger @ H @ S3 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_right
thf(fact_6852_prod_Omono__neutral__cong__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > rat,H: nat > rat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_rat ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups73079841787564623at_rat @ G @ T4 )
              = ( groups73079841787564623at_rat @ H @ S3 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_right
thf(fact_6853_prod_Omono__neutral__cong__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > code_natural,H: nat > code_natural] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_Code_natural ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups2279045934846249631atural @ G @ T4 )
              = ( groups2279045934846249631atural @ H @ S3 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_right
thf(fact_6854_prod_Omono__neutral__cong__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > nat,H: nat > nat] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_nat ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups708209901874060359at_nat @ G @ T4 )
              = ( groups708209901874060359at_nat @ H @ S3 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_right
thf(fact_6855_prod_Omono__neutral__cong__right,axiom,
    ! [T4: set_nat,S3: set_nat,G: nat > int,H: nat > int] :
      ( ( finite_finite_nat @ T4 )
     => ( ( ord_less_eq_set_nat @ S3 @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ ( minus_minus_set_nat @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_int ) )
         => ( ! [X5: nat] :
                ( ( member_nat @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups705719431365010083at_int @ G @ T4 )
              = ( groups705719431365010083at_int @ H @ S3 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_right
thf(fact_6856_prod_Omono__neutral__cong__right,axiom,
    ! [T4: set_int,S3: set_int,G: int > int,H: int > int] :
      ( ( finite_finite_int @ T4 )
     => ( ( ord_less_eq_set_int @ S3 @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ ( minus_minus_set_int @ T4 @ S3 ) )
             => ( ( G @ X5 )
                = one_one_int ) )
         => ( ! [X5: int] :
                ( ( member_int @ X5 @ S3 )
               => ( ( G @ X5 )
                  = ( H @ X5 ) ) )
           => ( ( groups1705073143266064639nt_int @ G @ T4 )
              = ( groups1705073143266064639nt_int @ H @ S3 ) ) ) ) ) ) ).

% prod.mono_neutral_cong_right
thf(fact_6857_set__bit__eq__or,axiom,
    ( bit_se7879613467334960850it_int
    = ( ^ [N5: nat,A4: int] : ( bit_se1409905431419307370or_int @ A4 @ ( bit_se545348938243370406it_int @ N5 @ one_one_int ) ) ) ) ).

% set_bit_eq_or
thf(fact_6858_set__bit__eq__or,axiom,
    ( bit_se2793503036327961859nteger
    = ( ^ [N5: nat,A4: code_integer] : ( bit_se1080825931792720795nteger @ A4 @ ( bit_se7788150548672797655nteger @ N5 @ one_one_Code_integer ) ) ) ) ).

% set_bit_eq_or
thf(fact_6859_set__bit__eq__or,axiom,
    ( bit_se1617098188084679374atural
    = ( ^ [N5: nat,A4: code_natural] : ( bit_se9127793120404214118atural @ A4 @ ( bit_se6611745700429515170atural @ N5 @ one_one_Code_natural ) ) ) ) ).

% set_bit_eq_or
thf(fact_6860_set__bit__eq__or,axiom,
    ( bit_se7882103937844011126it_nat
    = ( ^ [N5: nat,A4: nat] : ( bit_se1412395901928357646or_nat @ A4 @ ( bit_se547839408752420682it_nat @ N5 @ one_one_nat ) ) ) ) ).

% set_bit_eq_or
thf(fact_6861_sum__eq__Suc0__iff,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( groups4541462559716669496nt_nat @ F @ A3 )
          = ( suc @ zero_zero_nat ) )
        = ( ? [X4: int] :
              ( ( member_int @ X4 @ A3 )
              & ( ( F @ X4 )
                = ( suc @ zero_zero_nat ) )
              & ! [Y: int] :
                  ( ( member_int @ Y @ A3 )
                 => ( ( X4 != Y )
                   => ( ( F @ Y )
                      = zero_zero_nat ) ) ) ) ) ) ) ).

% sum_eq_Suc0_iff
thf(fact_6862_sum__eq__Suc0__iff,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,F: product_prod_nat_nat > nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( ( ( groups977919841031483927at_nat @ F @ A3 )
          = ( suc @ zero_zero_nat ) )
        = ( ? [X4: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ X4 @ A3 )
              & ( ( F @ X4 )
                = ( suc @ zero_zero_nat ) )
              & ! [Y: product_prod_nat_nat] :
                  ( ( member8440522571783428010at_nat @ Y @ A3 )
                 => ( ( X4 != Y )
                   => ( ( F @ Y )
                      = zero_zero_nat ) ) ) ) ) ) ) ).

% sum_eq_Suc0_iff
thf(fact_6863_sum__eq__Suc0__iff,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( groups3542108847815614940at_nat @ F @ A3 )
          = ( suc @ zero_zero_nat ) )
        = ( ? [X4: nat] :
              ( ( member_nat @ X4 @ A3 )
              & ( ( F @ X4 )
                = ( suc @ zero_zero_nat ) )
              & ! [Y: nat] :
                  ( ( member_nat @ Y @ A3 )
                 => ( ( X4 != Y )
                   => ( ( F @ Y )
                      = zero_zero_nat ) ) ) ) ) ) ) ).

% sum_eq_Suc0_iff
thf(fact_6864_sum__eq__1__iff,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( groups4541462559716669496nt_nat @ F @ A3 )
          = one_one_nat )
        = ( ? [X4: int] :
              ( ( member_int @ X4 @ A3 )
              & ( ( F @ X4 )
                = one_one_nat )
              & ! [Y: int] :
                  ( ( member_int @ Y @ A3 )
                 => ( ( X4 != Y )
                   => ( ( F @ Y )
                      = zero_zero_nat ) ) ) ) ) ) ) ).

% sum_eq_1_iff
thf(fact_6865_sum__eq__1__iff,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,F: product_prod_nat_nat > nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( ( ( groups977919841031483927at_nat @ F @ A3 )
          = one_one_nat )
        = ( ? [X4: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ X4 @ A3 )
              & ( ( F @ X4 )
                = one_one_nat )
              & ! [Y: product_prod_nat_nat] :
                  ( ( member8440522571783428010at_nat @ Y @ A3 )
                 => ( ( X4 != Y )
                   => ( ( F @ Y )
                      = zero_zero_nat ) ) ) ) ) ) ) ).

% sum_eq_1_iff
thf(fact_6866_sum__eq__1__iff,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( groups3542108847815614940at_nat @ F @ A3 )
          = one_one_nat )
        = ( ? [X4: nat] :
              ( ( member_nat @ X4 @ A3 )
              & ( ( F @ X4 )
                = one_one_nat )
              & ! [Y: nat] :
                  ( ( member_nat @ Y @ A3 )
                 => ( ( X4 != Y )
                   => ( ( F @ Y )
                      = zero_zero_nat ) ) ) ) ) ) ) ).

% sum_eq_1_iff
thf(fact_6867_sum__nonneg__0,axiom,
    ! [S: set_nat,F: nat > code_integer,I: nat] :
      ( ( finite_finite_nat @ S )
     => ( ! [I3: nat] :
            ( ( member_nat @ I3 @ S )
           => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) ) )
       => ( ( ( groups7501900531339628137nteger @ F @ S )
            = zero_z3403309356797280102nteger )
         => ( ( member_nat @ I @ S )
           => ( ( F @ I )
              = zero_z3403309356797280102nteger ) ) ) ) ) ).

% sum_nonneg_0
thf(fact_6868_sum__nonneg__0,axiom,
    ! [S: set_int,F: int > code_integer,I: int] :
      ( ( finite_finite_int @ S )
     => ( ! [I3: int] :
            ( ( member_int @ I3 @ S )
           => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) ) )
       => ( ( ( groups7873554091576472773nteger @ F @ S )
            = zero_z3403309356797280102nteger )
         => ( ( member_int @ I @ S )
           => ( ( F @ I )
              = zero_z3403309356797280102nteger ) ) ) ) ) ).

% sum_nonneg_0
thf(fact_6869_sum__nonneg__0,axiom,
    ! [S: set_nat,F: nat > code_natural,I: nat] :
      ( ( finite_finite_nat @ S )
     => ( ! [I3: nat] :
            ( ( member_nat @ I3 @ S )
           => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) ) )
       => ( ( ( groups6325495683096345652atural @ F @ S )
            = zero_z2226904508553997617atural )
         => ( ( member_nat @ I @ S )
           => ( ( F @ I )
              = zero_z2226904508553997617atural ) ) ) ) ) ).

% sum_nonneg_0
thf(fact_6870_sum__nonneg__0,axiom,
    ! [S: set_int,F: int > code_natural,I: int] :
      ( ( finite_finite_int @ S )
     => ( ! [I3: int] :
            ( ( member_int @ I3 @ S )
           => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) ) )
       => ( ( ( groups6697149243333190288atural @ F @ S )
            = zero_z2226904508553997617atural )
         => ( ( member_int @ I @ S )
           => ( ( F @ I )
              = zero_z2226904508553997617atural ) ) ) ) ) ).

% sum_nonneg_0
thf(fact_6871_sum__nonneg__0,axiom,
    ! [S: set_nat,F: nat > rat,I: nat] :
      ( ( finite_finite_nat @ S )
     => ( ! [I3: nat] :
            ( ( member_nat @ I3 @ S )
           => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) ) )
       => ( ( ( groups2906978787729119204at_rat @ F @ S )
            = zero_zero_rat )
         => ( ( member_nat @ I @ S )
           => ( ( F @ I )
              = zero_zero_rat ) ) ) ) ) ).

% sum_nonneg_0
thf(fact_6872_sum__nonneg__0,axiom,
    ! [S: set_int,F: int > rat,I: int] :
      ( ( finite_finite_int @ S )
     => ( ! [I3: int] :
            ( ( member_int @ I3 @ S )
           => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) ) )
       => ( ( ( groups3906332499630173760nt_rat @ F @ S )
            = zero_zero_rat )
         => ( ( member_int @ I @ S )
           => ( ( F @ I )
              = zero_zero_rat ) ) ) ) ) ).

% sum_nonneg_0
thf(fact_6873_sum__nonneg__0,axiom,
    ! [S: set_int,F: int > nat,I: int] :
      ( ( finite_finite_int @ S )
     => ( ! [I3: int] :
            ( ( member_int @ I3 @ S )
           => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ I3 ) ) )
       => ( ( ( groups4541462559716669496nt_nat @ F @ S )
            = zero_zero_nat )
         => ( ( member_int @ I @ S )
           => ( ( F @ I )
              = zero_zero_nat ) ) ) ) ) ).

% sum_nonneg_0
thf(fact_6874_sum__nonneg__0,axiom,
    ! [S: set_nat,F: nat > int,I: nat] :
      ( ( finite_finite_nat @ S )
     => ( ! [I3: nat] :
            ( ( member_nat @ I3 @ S )
           => ( ord_less_eq_int @ zero_zero_int @ ( F @ I3 ) ) )
       => ( ( ( groups3539618377306564664at_int @ F @ S )
            = zero_zero_int )
         => ( ( member_nat @ I @ S )
           => ( ( F @ I )
              = zero_zero_int ) ) ) ) ) ).

% sum_nonneg_0
thf(fact_6875_sum__nonneg__0,axiom,
    ! [S: set_nat,F: nat > nat,I: nat] :
      ( ( finite_finite_nat @ S )
     => ( ! [I3: nat] :
            ( ( member_nat @ I3 @ S )
           => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ I3 ) ) )
       => ( ( ( groups3542108847815614940at_nat @ F @ S )
            = zero_zero_nat )
         => ( ( member_nat @ I @ S )
           => ( ( F @ I )
              = zero_zero_nat ) ) ) ) ) ).

% sum_nonneg_0
thf(fact_6876_sum__nonneg__0,axiom,
    ! [S: set_int,F: int > int,I: int] :
      ( ( finite_finite_int @ S )
     => ( ! [I3: int] :
            ( ( member_int @ I3 @ S )
           => ( ord_less_eq_int @ zero_zero_int @ ( F @ I3 ) ) )
       => ( ( ( groups4538972089207619220nt_int @ F @ S )
            = zero_zero_int )
         => ( ( member_int @ I @ S )
           => ( ( F @ I )
              = zero_zero_int ) ) ) ) ) ).

% sum_nonneg_0
thf(fact_6877_sum__nonneg__leq__bound,axiom,
    ! [S: set_nat,F: nat > code_integer,B3: code_integer,I: nat] :
      ( ( finite_finite_nat @ S )
     => ( ! [I3: nat] :
            ( ( member_nat @ I3 @ S )
           => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) ) )
       => ( ( ( groups7501900531339628137nteger @ F @ S )
            = B3 )
         => ( ( member_nat @ I @ S )
           => ( ord_le3102999989581377725nteger @ ( F @ I ) @ B3 ) ) ) ) ) ).

% sum_nonneg_leq_bound
thf(fact_6878_sum__nonneg__leq__bound,axiom,
    ! [S: set_int,F: int > code_integer,B3: code_integer,I: int] :
      ( ( finite_finite_int @ S )
     => ( ! [I3: int] :
            ( ( member_int @ I3 @ S )
           => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) ) )
       => ( ( ( groups7873554091576472773nteger @ F @ S )
            = B3 )
         => ( ( member_int @ I @ S )
           => ( ord_le3102999989581377725nteger @ ( F @ I ) @ B3 ) ) ) ) ) ).

% sum_nonneg_leq_bound
thf(fact_6879_sum__nonneg__leq__bound,axiom,
    ! [S: set_nat,F: nat > code_natural,B3: code_natural,I: nat] :
      ( ( finite_finite_nat @ S )
     => ( ! [I3: nat] :
            ( ( member_nat @ I3 @ S )
           => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) ) )
       => ( ( ( groups6325495683096345652atural @ F @ S )
            = B3 )
         => ( ( member_nat @ I @ S )
           => ( ord_le1926595141338095240atural @ ( F @ I ) @ B3 ) ) ) ) ) ).

% sum_nonneg_leq_bound
thf(fact_6880_sum__nonneg__leq__bound,axiom,
    ! [S: set_int,F: int > code_natural,B3: code_natural,I: int] :
      ( ( finite_finite_int @ S )
     => ( ! [I3: int] :
            ( ( member_int @ I3 @ S )
           => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) ) )
       => ( ( ( groups6697149243333190288atural @ F @ S )
            = B3 )
         => ( ( member_int @ I @ S )
           => ( ord_le1926595141338095240atural @ ( F @ I ) @ B3 ) ) ) ) ) ).

% sum_nonneg_leq_bound
thf(fact_6881_sum__nonneg__leq__bound,axiom,
    ! [S: set_nat,F: nat > rat,B3: rat,I: nat] :
      ( ( finite_finite_nat @ S )
     => ( ! [I3: nat] :
            ( ( member_nat @ I3 @ S )
           => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) ) )
       => ( ( ( groups2906978787729119204at_rat @ F @ S )
            = B3 )
         => ( ( member_nat @ I @ S )
           => ( ord_less_eq_rat @ ( F @ I ) @ B3 ) ) ) ) ) ).

% sum_nonneg_leq_bound
thf(fact_6882_sum__nonneg__leq__bound,axiom,
    ! [S: set_int,F: int > rat,B3: rat,I: int] :
      ( ( finite_finite_int @ S )
     => ( ! [I3: int] :
            ( ( member_int @ I3 @ S )
           => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) ) )
       => ( ( ( groups3906332499630173760nt_rat @ F @ S )
            = B3 )
         => ( ( member_int @ I @ S )
           => ( ord_less_eq_rat @ ( F @ I ) @ B3 ) ) ) ) ) ).

% sum_nonneg_leq_bound
thf(fact_6883_sum__nonneg__leq__bound,axiom,
    ! [S: set_int,F: int > nat,B3: nat,I: int] :
      ( ( finite_finite_int @ S )
     => ( ! [I3: int] :
            ( ( member_int @ I3 @ S )
           => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ I3 ) ) )
       => ( ( ( groups4541462559716669496nt_nat @ F @ S )
            = B3 )
         => ( ( member_int @ I @ S )
           => ( ord_less_eq_nat @ ( F @ I ) @ B3 ) ) ) ) ) ).

% sum_nonneg_leq_bound
thf(fact_6884_sum__nonneg__leq__bound,axiom,
    ! [S: set_nat,F: nat > int,B3: int,I: nat] :
      ( ( finite_finite_nat @ S )
     => ( ! [I3: nat] :
            ( ( member_nat @ I3 @ S )
           => ( ord_less_eq_int @ zero_zero_int @ ( F @ I3 ) ) )
       => ( ( ( groups3539618377306564664at_int @ F @ S )
            = B3 )
         => ( ( member_nat @ I @ S )
           => ( ord_less_eq_int @ ( F @ I ) @ B3 ) ) ) ) ) ).

% sum_nonneg_leq_bound
thf(fact_6885_sum__nonneg__leq__bound,axiom,
    ! [S: set_nat,F: nat > nat,B3: nat,I: nat] :
      ( ( finite_finite_nat @ S )
     => ( ! [I3: nat] :
            ( ( member_nat @ I3 @ S )
           => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ I3 ) ) )
       => ( ( ( groups3542108847815614940at_nat @ F @ S )
            = B3 )
         => ( ( member_nat @ I @ S )
           => ( ord_less_eq_nat @ ( F @ I ) @ B3 ) ) ) ) ) ).

% sum_nonneg_leq_bound
thf(fact_6886_sum__nonneg__leq__bound,axiom,
    ! [S: set_int,F: int > int,B3: int,I: int] :
      ( ( finite_finite_int @ S )
     => ( ! [I3: int] :
            ( ( member_int @ I3 @ S )
           => ( ord_less_eq_int @ zero_zero_int @ ( F @ I3 ) ) )
       => ( ( ( groups4538972089207619220nt_int @ F @ S )
            = B3 )
         => ( ( member_int @ I @ S )
           => ( ord_less_eq_int @ ( F @ I ) @ B3 ) ) ) ) ) ).

% sum_nonneg_leq_bound
thf(fact_6887_finite__divisors__nat,axiom,
    ! [M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( finite_finite_nat
        @ ( collect_nat
          @ ^ [D2: nat] : ( dvd_dvd_nat @ D2 @ M ) ) ) ) ).

% finite_divisors_nat
thf(fact_6888_gcd__code__integer,axiom,
    ( gcd_gcd_Code_integer
    = ( ^ [K3: code_integer,L4: code_integer] : ( abs_abs_Code_integer @ ( if_Code_integer @ ( L4 = zero_z3403309356797280102nteger ) @ K3 @ ( gcd_gcd_Code_integer @ L4 @ ( modulo364778990260209775nteger @ ( abs_abs_Code_integer @ K3 ) @ ( abs_abs_Code_integer @ L4 ) ) ) ) ) ) ) ).

% gcd_code_integer
thf(fact_6889_finite__abs__int__segment,axiom,
    ! [A: rat] :
      ( finite_finite_rat
      @ ( collect_rat
        @ ^ [K3: rat] :
            ( ( member_rat @ K3 @ ring_1_Ints_rat )
            & ( ord_less_eq_rat @ ( abs_abs_rat @ K3 ) @ A ) ) ) ) ).

% finite_abs_int_segment
thf(fact_6890_bit_Ocomplement__unique,axiom,
    ! [A: code_integer,X: code_integer,Y3: code_integer] :
      ( ( ( bit_se3949692690581998587nteger @ A @ X )
        = zero_z3403309356797280102nteger )
     => ( ( ( bit_se1080825931792720795nteger @ A @ X )
          = ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
       => ( ( ( bit_se3949692690581998587nteger @ A @ Y3 )
            = zero_z3403309356797280102nteger )
         => ( ( ( bit_se1080825931792720795nteger @ A @ Y3 )
              = ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
           => ( X = Y3 ) ) ) ) ) ).

% bit.complement_unique
thf(fact_6891_bit_Ocomplement__unique,axiom,
    ! [A: int,X: int,Y3: int] :
      ( ( ( bit_se725231765392027082nd_int @ A @ X )
        = zero_zero_int )
     => ( ( ( bit_se1409905431419307370or_int @ A @ X )
          = ( uminus_uminus_int @ one_one_int ) )
       => ( ( ( bit_se725231765392027082nd_int @ A @ Y3 )
            = zero_zero_int )
         => ( ( ( bit_se1409905431419307370or_int @ A @ Y3 )
              = ( uminus_uminus_int @ one_one_int ) )
           => ( X = Y3 ) ) ) ) ) ).

% bit.complement_unique
thf(fact_6892_sum__pos2,axiom,
    ! [I5: set_nat,I: nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ I5 )
     => ( ( member_nat @ I @ I5 )
       => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( F @ I ) )
         => ( ! [I3: nat] :
                ( ( member_nat @ I3 @ I5 )
               => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) ) )
           => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( groups7501900531339628137nteger @ F @ I5 ) ) ) ) ) ) ).

% sum_pos2
thf(fact_6893_sum__pos2,axiom,
    ! [I5: set_int,I: int,F: int > code_integer] :
      ( ( finite_finite_int @ I5 )
     => ( ( member_int @ I @ I5 )
       => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( F @ I ) )
         => ( ! [I3: int] :
                ( ( member_int @ I3 @ I5 )
               => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) ) )
           => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( groups7873554091576472773nteger @ F @ I5 ) ) ) ) ) ) ).

% sum_pos2
thf(fact_6894_sum__pos2,axiom,
    ! [I5: set_nat,I: nat,F: nat > code_natural] :
      ( ( finite_finite_nat @ I5 )
     => ( ( member_nat @ I @ I5 )
       => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( F @ I ) )
         => ( ! [I3: nat] :
                ( ( member_nat @ I3 @ I5 )
               => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) ) )
           => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( groups6325495683096345652atural @ F @ I5 ) ) ) ) ) ) ).

% sum_pos2
thf(fact_6895_sum__pos2,axiom,
    ! [I5: set_int,I: int,F: int > code_natural] :
      ( ( finite_finite_int @ I5 )
     => ( ( member_int @ I @ I5 )
       => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( F @ I ) )
         => ( ! [I3: int] :
                ( ( member_int @ I3 @ I5 )
               => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) ) )
           => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( groups6697149243333190288atural @ F @ I5 ) ) ) ) ) ) ).

% sum_pos2
thf(fact_6896_sum__pos2,axiom,
    ! [I5: set_nat,I: nat,F: nat > rat] :
      ( ( finite_finite_nat @ I5 )
     => ( ( member_nat @ I @ I5 )
       => ( ( ord_less_rat @ zero_zero_rat @ ( F @ I ) )
         => ( ! [I3: nat] :
                ( ( member_nat @ I3 @ I5 )
               => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) ) )
           => ( ord_less_rat @ zero_zero_rat @ ( groups2906978787729119204at_rat @ F @ I5 ) ) ) ) ) ) ).

% sum_pos2
thf(fact_6897_sum__pos2,axiom,
    ! [I5: set_int,I: int,F: int > rat] :
      ( ( finite_finite_int @ I5 )
     => ( ( member_int @ I @ I5 )
       => ( ( ord_less_rat @ zero_zero_rat @ ( F @ I ) )
         => ( ! [I3: int] :
                ( ( member_int @ I3 @ I5 )
               => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) ) )
           => ( ord_less_rat @ zero_zero_rat @ ( groups3906332499630173760nt_rat @ F @ I5 ) ) ) ) ) ) ).

% sum_pos2
thf(fact_6898_sum__pos2,axiom,
    ! [I5: set_int,I: int,F: int > nat] :
      ( ( finite_finite_int @ I5 )
     => ( ( member_int @ I @ I5 )
       => ( ( ord_less_nat @ zero_zero_nat @ ( F @ I ) )
         => ( ! [I3: int] :
                ( ( member_int @ I3 @ I5 )
               => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ I3 ) ) )
           => ( ord_less_nat @ zero_zero_nat @ ( groups4541462559716669496nt_nat @ F @ I5 ) ) ) ) ) ) ).

% sum_pos2
thf(fact_6899_sum__pos2,axiom,
    ! [I5: set_nat,I: nat,F: nat > int] :
      ( ( finite_finite_nat @ I5 )
     => ( ( member_nat @ I @ I5 )
       => ( ( ord_less_int @ zero_zero_int @ ( F @ I ) )
         => ( ! [I3: nat] :
                ( ( member_nat @ I3 @ I5 )
               => ( ord_less_eq_int @ zero_zero_int @ ( F @ I3 ) ) )
           => ( ord_less_int @ zero_zero_int @ ( groups3539618377306564664at_int @ F @ I5 ) ) ) ) ) ) ).

% sum_pos2
thf(fact_6900_sum__pos2,axiom,
    ! [I5: set_nat,I: nat,F: nat > nat] :
      ( ( finite_finite_nat @ I5 )
     => ( ( member_nat @ I @ I5 )
       => ( ( ord_less_nat @ zero_zero_nat @ ( F @ I ) )
         => ( ! [I3: nat] :
                ( ( member_nat @ I3 @ I5 )
               => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ I3 ) ) )
           => ( ord_less_nat @ zero_zero_nat @ ( groups3542108847815614940at_nat @ F @ I5 ) ) ) ) ) ) ).

% sum_pos2
thf(fact_6901_sum__pos2,axiom,
    ! [I5: set_int,I: int,F: int > int] :
      ( ( finite_finite_int @ I5 )
     => ( ( member_int @ I @ I5 )
       => ( ( ord_less_int @ zero_zero_int @ ( F @ I ) )
         => ( ! [I3: int] :
                ( ( member_int @ I3 @ I5 )
               => ( ord_less_eq_int @ zero_zero_int @ ( F @ I3 ) ) )
           => ( ord_less_int @ zero_zero_int @ ( groups4538972089207619220nt_int @ F @ I5 ) ) ) ) ) ) ).

% sum_pos2
thf(fact_6902_sum__mono2,axiom,
    ! [B3: set_int,A3: set_int,F: int > code_integer] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ! [B2: int] :
              ( ( member_int @ B2 @ ( minus_minus_set_int @ B3 @ A3 ) )
             => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ B2 ) ) )
         => ( ord_le3102999989581377725nteger @ ( groups7873554091576472773nteger @ F @ A3 ) @ ( groups7873554091576472773nteger @ F @ B3 ) ) ) ) ) ).

% sum_mono2
thf(fact_6903_sum__mono2,axiom,
    ! [B3: set_int,A3: set_int,F: int > code_natural] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ! [B2: int] :
              ( ( member_int @ B2 @ ( minus_minus_set_int @ B3 @ A3 ) )
             => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ B2 ) ) )
         => ( ord_le1926595141338095240atural @ ( groups6697149243333190288atural @ F @ A3 ) @ ( groups6697149243333190288atural @ F @ B3 ) ) ) ) ) ).

% sum_mono2
thf(fact_6904_sum__mono2,axiom,
    ! [B3: set_int,A3: set_int,F: int > rat] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ! [B2: int] :
              ( ( member_int @ B2 @ ( minus_minus_set_int @ B3 @ A3 ) )
             => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ B2 ) ) )
         => ( ord_less_eq_rat @ ( groups3906332499630173760nt_rat @ F @ A3 ) @ ( groups3906332499630173760nt_rat @ F @ B3 ) ) ) ) ) ).

% sum_mono2
thf(fact_6905_sum__mono2,axiom,
    ! [B3: set_int,A3: set_int,F: int > nat] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ! [B2: int] :
              ( ( member_int @ B2 @ ( minus_minus_set_int @ B3 @ A3 ) )
             => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ B2 ) ) )
         => ( ord_less_eq_nat @ ( groups4541462559716669496nt_nat @ F @ A3 ) @ ( groups4541462559716669496nt_nat @ F @ B3 ) ) ) ) ) ).

% sum_mono2
thf(fact_6906_sum__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ! [B2: nat] :
              ( ( member_nat @ B2 @ ( minus_minus_set_nat @ B3 @ A3 ) )
             => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ B2 ) ) )
         => ( ord_le3102999989581377725nteger @ ( groups7501900531339628137nteger @ F @ A3 ) @ ( groups7501900531339628137nteger @ F @ B3 ) ) ) ) ) ).

% sum_mono2
thf(fact_6907_sum__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,F: nat > code_natural] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ! [B2: nat] :
              ( ( member_nat @ B2 @ ( minus_minus_set_nat @ B3 @ A3 ) )
             => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ B2 ) ) )
         => ( ord_le1926595141338095240atural @ ( groups6325495683096345652atural @ F @ A3 ) @ ( groups6325495683096345652atural @ F @ B3 ) ) ) ) ) ).

% sum_mono2
thf(fact_6908_sum__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,F: nat > rat] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ! [B2: nat] :
              ( ( member_nat @ B2 @ ( minus_minus_set_nat @ B3 @ A3 ) )
             => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ B2 ) ) )
         => ( ord_less_eq_rat @ ( groups2906978787729119204at_rat @ F @ A3 ) @ ( groups2906978787729119204at_rat @ F @ B3 ) ) ) ) ) ).

% sum_mono2
thf(fact_6909_sum__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,F: nat > int] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ! [B2: nat] :
              ( ( member_nat @ B2 @ ( minus_minus_set_nat @ B3 @ A3 ) )
             => ( ord_less_eq_int @ zero_zero_int @ ( F @ B2 ) ) )
         => ( ord_less_eq_int @ ( groups3539618377306564664at_int @ F @ A3 ) @ ( groups3539618377306564664at_int @ F @ B3 ) ) ) ) ) ).

% sum_mono2
thf(fact_6910_sum__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ! [B2: nat] :
              ( ( member_nat @ B2 @ ( minus_minus_set_nat @ B3 @ A3 ) )
             => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ B2 ) ) )
         => ( ord_less_eq_nat @ ( groups3542108847815614940at_nat @ F @ A3 ) @ ( groups3542108847815614940at_nat @ F @ B3 ) ) ) ) ) ).

% sum_mono2
thf(fact_6911_sum__mono2,axiom,
    ! [B3: set_int,A3: set_int,F: int > int] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ! [B2: int] :
              ( ( member_int @ B2 @ ( minus_minus_set_int @ B3 @ A3 ) )
             => ( ord_less_eq_int @ zero_zero_int @ ( F @ B2 ) ) )
         => ( ord_less_eq_int @ ( groups4538972089207619220nt_int @ F @ A3 ) @ ( groups4538972089207619220nt_int @ F @ B3 ) ) ) ) ) ).

% sum_mono2
thf(fact_6912_less__1__prod2,axiom,
    ! [I5: set_nat,I: nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ I5 )
     => ( ( member_nat @ I @ I5 )
       => ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( F @ I ) )
         => ( ! [I3: nat] :
                ( ( member_nat @ I3 @ I5 )
               => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( F @ I3 ) ) )
           => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( groups3455450783089532116nteger @ F @ I5 ) ) ) ) ) ) ).

% less_1_prod2
thf(fact_6913_less__1__prod2,axiom,
    ! [I5: set_int,I: int,F: int > code_integer] :
      ( ( finite_finite_int @ I5 )
     => ( ( member_int @ I @ I5 )
       => ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( F @ I ) )
         => ( ! [I3: int] :
                ( ( member_int @ I3 @ I5 )
               => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( F @ I3 ) ) )
           => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( groups3827104343326376752nteger @ F @ I5 ) ) ) ) ) ) ).

% less_1_prod2
thf(fact_6914_less__1__prod2,axiom,
    ! [I5: set_nat,I: nat,F: nat > rat] :
      ( ( finite_finite_nat @ I5 )
     => ( ( member_nat @ I @ I5 )
       => ( ( ord_less_rat @ one_one_rat @ ( F @ I ) )
         => ( ! [I3: nat] :
                ( ( member_nat @ I3 @ I5 )
               => ( ord_less_eq_rat @ one_one_rat @ ( F @ I3 ) ) )
           => ( ord_less_rat @ one_one_rat @ ( groups73079841787564623at_rat @ F @ I5 ) ) ) ) ) ) ).

% less_1_prod2
thf(fact_6915_less__1__prod2,axiom,
    ! [I5: set_int,I: int,F: int > rat] :
      ( ( finite_finite_int @ I5 )
     => ( ( member_int @ I @ I5 )
       => ( ( ord_less_rat @ one_one_rat @ ( F @ I ) )
         => ( ! [I3: int] :
                ( ( member_int @ I3 @ I5 )
               => ( ord_less_eq_rat @ one_one_rat @ ( F @ I3 ) ) )
           => ( ord_less_rat @ one_one_rat @ ( groups1072433553688619179nt_rat @ F @ I5 ) ) ) ) ) ) ).

% less_1_prod2
thf(fact_6916_less__1__prod2,axiom,
    ! [I5: set_nat,I: nat,F: nat > int] :
      ( ( finite_finite_nat @ I5 )
     => ( ( member_nat @ I @ I5 )
       => ( ( ord_less_int @ one_one_int @ ( F @ I ) )
         => ( ! [I3: nat] :
                ( ( member_nat @ I3 @ I5 )
               => ( ord_less_eq_int @ one_one_int @ ( F @ I3 ) ) )
           => ( ord_less_int @ one_one_int @ ( groups705719431365010083at_int @ F @ I5 ) ) ) ) ) ) ).

% less_1_prod2
thf(fact_6917_less__1__prod2,axiom,
    ! [I5: set_int,I: int,F: int > int] :
      ( ( finite_finite_int @ I5 )
     => ( ( member_int @ I @ I5 )
       => ( ( ord_less_int @ one_one_int @ ( F @ I ) )
         => ( ! [I3: int] :
                ( ( member_int @ I3 @ I5 )
               => ( ord_less_eq_int @ one_one_int @ ( F @ I3 ) ) )
           => ( ord_less_int @ one_one_int @ ( groups1705073143266064639nt_int @ F @ I5 ) ) ) ) ) ) ).

% less_1_prod2
thf(fact_6918_less__1__prod2,axiom,
    ! [I5: set_set_nat,I: set_nat,F: set_nat > code_integer] :
      ( ( finite1152437895449049373et_nat @ I5 )
     => ( ( member_set_nat @ I @ I5 )
       => ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( F @ I ) )
         => ( ! [I3: set_nat] :
                ( ( member_set_nat @ I3 @ I5 )
               => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( F @ I3 ) ) )
           => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( groups2761809935038513290nteger @ F @ I5 ) ) ) ) ) ) ).

% less_1_prod2
thf(fact_6919_less__1__prod2,axiom,
    ! [I5: set_set_nat,I: set_nat,F: set_nat > rat] :
      ( ( finite1152437895449049373et_nat @ I5 )
     => ( ( member_set_nat @ I @ I5 )
       => ( ( ord_less_rat @ one_one_rat @ ( F @ I ) )
         => ( ! [I3: set_nat] :
                ( ( member_set_nat @ I3 @ I5 )
               => ( ord_less_eq_rat @ one_one_rat @ ( F @ I3 ) ) )
           => ( ord_less_rat @ one_one_rat @ ( groups3613417700093529605at_rat @ F @ I5 ) ) ) ) ) ) ).

% less_1_prod2
thf(fact_6920_less__1__prod2,axiom,
    ! [I5: set_set_nat,I: set_nat,F: set_nat > int] :
      ( ( finite1152437895449049373et_nat @ I5 )
     => ( ( member_set_nat @ I @ I5 )
       => ( ( ord_less_int @ one_one_int @ ( F @ I ) )
         => ( ! [I3: set_nat] :
                ( ( member_set_nat @ I3 @ I5 )
               => ( ord_less_eq_int @ one_one_int @ ( F @ I3 ) ) )
           => ( ord_less_int @ one_one_int @ ( groups4246057289670975065at_int @ F @ I5 ) ) ) ) ) ) ).

% less_1_prod2
thf(fact_6921_less__1__prod2,axiom,
    ! [I5: set_Pr1261947904930325089at_nat,I: product_prod_nat_nat,F: product_prod_nat_nat > code_integer] :
      ( ( finite6177210948735845034at_nat @ I5 )
     => ( ( member8440522571783428010at_nat @ I @ I5 )
       => ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( F @ I ) )
         => ( ! [I3: product_prod_nat_nat] :
                ( ( member8440522571783428010at_nat @ I3 @ I5 )
               => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( F @ I3 ) ) )
           => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( groups1230400874837758585nteger @ F @ I5 ) ) ) ) ) ) ).

% less_1_prod2
thf(fact_6922_gcd__int__def,axiom,
    ( gcd_gcd_int
    = ( ^ [X4: int,Y: int] : ( semiri1314217659103216013at_int @ ( gcd_gcd_nat @ ( nat2 @ ( abs_abs_int @ X4 ) ) @ ( nat2 @ ( abs_abs_int @ Y ) ) ) ) ) ) ).

% gcd_int_def
thf(fact_6923_sum__strict__mono2,axiom,
    ! [B3: set_int,A3: set_int,B: int,F: int > code_integer] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ( member_int @ B @ ( minus_minus_set_int @ B3 @ A3 ) )
         => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( F @ B ) )
           => ( ! [X5: int] :
                  ( ( member_int @ X5 @ B3 )
                 => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ X5 ) ) )
             => ( ord_le6747313008572928689nteger @ ( groups7873554091576472773nteger @ F @ A3 ) @ ( groups7873554091576472773nteger @ F @ B3 ) ) ) ) ) ) ) ).

% sum_strict_mono2
thf(fact_6924_sum__strict__mono2,axiom,
    ! [B3: set_int,A3: set_int,B: int,F: int > code_natural] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ( member_int @ B @ ( minus_minus_set_int @ B3 @ A3 ) )
         => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( F @ B ) )
           => ( ! [X5: int] :
                  ( ( member_int @ X5 @ B3 )
                 => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ X5 ) ) )
             => ( ord_le5570908160329646204atural @ ( groups6697149243333190288atural @ F @ A3 ) @ ( groups6697149243333190288atural @ F @ B3 ) ) ) ) ) ) ) ).

% sum_strict_mono2
thf(fact_6925_sum__strict__mono2,axiom,
    ! [B3: set_int,A3: set_int,B: int,F: int > rat] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ( member_int @ B @ ( minus_minus_set_int @ B3 @ A3 ) )
         => ( ( ord_less_rat @ zero_zero_rat @ ( F @ B ) )
           => ( ! [X5: int] :
                  ( ( member_int @ X5 @ B3 )
                 => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ X5 ) ) )
             => ( ord_less_rat @ ( groups3906332499630173760nt_rat @ F @ A3 ) @ ( groups3906332499630173760nt_rat @ F @ B3 ) ) ) ) ) ) ) ).

% sum_strict_mono2
thf(fact_6926_sum__strict__mono2,axiom,
    ! [B3: set_int,A3: set_int,B: int,F: int > nat] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ( member_int @ B @ ( minus_minus_set_int @ B3 @ A3 ) )
         => ( ( ord_less_nat @ zero_zero_nat @ ( F @ B ) )
           => ( ! [X5: int] :
                  ( ( member_int @ X5 @ B3 )
                 => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ X5 ) ) )
             => ( ord_less_nat @ ( groups4541462559716669496nt_nat @ F @ A3 ) @ ( groups4541462559716669496nt_nat @ F @ B3 ) ) ) ) ) ) ) ).

% sum_strict_mono2
thf(fact_6927_sum__strict__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,B: nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ( member_nat @ B @ ( minus_minus_set_nat @ B3 @ A3 ) )
         => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( F @ B ) )
           => ( ! [X5: nat] :
                  ( ( member_nat @ X5 @ B3 )
                 => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ X5 ) ) )
             => ( ord_le6747313008572928689nteger @ ( groups7501900531339628137nteger @ F @ A3 ) @ ( groups7501900531339628137nteger @ F @ B3 ) ) ) ) ) ) ) ).

% sum_strict_mono2
thf(fact_6928_sum__strict__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,B: nat,F: nat > code_natural] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ( member_nat @ B @ ( minus_minus_set_nat @ B3 @ A3 ) )
         => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( F @ B ) )
           => ( ! [X5: nat] :
                  ( ( member_nat @ X5 @ B3 )
                 => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ X5 ) ) )
             => ( ord_le5570908160329646204atural @ ( groups6325495683096345652atural @ F @ A3 ) @ ( groups6325495683096345652atural @ F @ B3 ) ) ) ) ) ) ) ).

% sum_strict_mono2
thf(fact_6929_sum__strict__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,B: nat,F: nat > rat] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ( member_nat @ B @ ( minus_minus_set_nat @ B3 @ A3 ) )
         => ( ( ord_less_rat @ zero_zero_rat @ ( F @ B ) )
           => ( ! [X5: nat] :
                  ( ( member_nat @ X5 @ B3 )
                 => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ X5 ) ) )
             => ( ord_less_rat @ ( groups2906978787729119204at_rat @ F @ A3 ) @ ( groups2906978787729119204at_rat @ F @ B3 ) ) ) ) ) ) ) ).

% sum_strict_mono2
thf(fact_6930_sum__strict__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,B: nat,F: nat > int] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ( member_nat @ B @ ( minus_minus_set_nat @ B3 @ A3 ) )
         => ( ( ord_less_int @ zero_zero_int @ ( F @ B ) )
           => ( ! [X5: nat] :
                  ( ( member_nat @ X5 @ B3 )
                 => ( ord_less_eq_int @ zero_zero_int @ ( F @ X5 ) ) )
             => ( ord_less_int @ ( groups3539618377306564664at_int @ F @ A3 ) @ ( groups3539618377306564664at_int @ F @ B3 ) ) ) ) ) ) ) ).

% sum_strict_mono2
thf(fact_6931_sum__strict__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,B: nat,F: nat > nat] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ( member_nat @ B @ ( minus_minus_set_nat @ B3 @ A3 ) )
         => ( ( ord_less_nat @ zero_zero_nat @ ( F @ B ) )
           => ( ! [X5: nat] :
                  ( ( member_nat @ X5 @ B3 )
                 => ( ord_less_eq_nat @ zero_zero_nat @ ( F @ X5 ) ) )
             => ( ord_less_nat @ ( groups3542108847815614940at_nat @ F @ A3 ) @ ( groups3542108847815614940at_nat @ F @ B3 ) ) ) ) ) ) ) ).

% sum_strict_mono2
thf(fact_6932_sum__strict__mono2,axiom,
    ! [B3: set_int,A3: set_int,B: int,F: int > int] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ( member_int @ B @ ( minus_minus_set_int @ B3 @ A3 ) )
         => ( ( ord_less_int @ zero_zero_int @ ( F @ B ) )
           => ( ! [X5: int] :
                  ( ( member_int @ X5 @ B3 )
                 => ( ord_less_eq_int @ zero_zero_int @ ( F @ X5 ) ) )
             => ( ord_less_int @ ( groups4538972089207619220nt_int @ F @ A3 ) @ ( groups4538972089207619220nt_int @ F @ B3 ) ) ) ) ) ) ) ).

% sum_strict_mono2
thf(fact_6933_prod__mono2,axiom,
    ! [B3: set_int,A3: set_int,F: int > code_integer] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ! [B2: int] :
              ( ( member_int @ B2 @ ( minus_minus_set_int @ B3 @ A3 ) )
             => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( F @ B2 ) ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ A3 )
               => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ A2 ) ) )
           => ( ord_le3102999989581377725nteger @ ( groups3827104343326376752nteger @ F @ A3 ) @ ( groups3827104343326376752nteger @ F @ B3 ) ) ) ) ) ) ).

% prod_mono2
thf(fact_6934_prod__mono2,axiom,
    ! [B3: set_int,A3: set_int,F: int > rat] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ! [B2: int] :
              ( ( member_int @ B2 @ ( minus_minus_set_int @ B3 @ A3 ) )
             => ( ord_less_eq_rat @ one_one_rat @ ( F @ B2 ) ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ A3 )
               => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ A2 ) ) )
           => ( ord_less_eq_rat @ ( groups1072433553688619179nt_rat @ F @ A3 ) @ ( groups1072433553688619179nt_rat @ F @ B3 ) ) ) ) ) ) ).

% prod_mono2
thf(fact_6935_prod__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ! [B2: nat] :
              ( ( member_nat @ B2 @ ( minus_minus_set_nat @ B3 @ A3 ) )
             => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( F @ B2 ) ) )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ A3 )
               => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ A2 ) ) )
           => ( ord_le3102999989581377725nteger @ ( groups3455450783089532116nteger @ F @ A3 ) @ ( groups3455450783089532116nteger @ F @ B3 ) ) ) ) ) ) ).

% prod_mono2
thf(fact_6936_prod__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,F: nat > rat] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ! [B2: nat] :
              ( ( member_nat @ B2 @ ( minus_minus_set_nat @ B3 @ A3 ) )
             => ( ord_less_eq_rat @ one_one_rat @ ( F @ B2 ) ) )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ A3 )
               => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ A2 ) ) )
           => ( ord_less_eq_rat @ ( groups73079841787564623at_rat @ F @ A3 ) @ ( groups73079841787564623at_rat @ F @ B3 ) ) ) ) ) ) ).

% prod_mono2
thf(fact_6937_prod__mono2,axiom,
    ! [B3: set_nat,A3: set_nat,F: nat > int] :
      ( ( finite_finite_nat @ B3 )
     => ( ( ord_less_eq_set_nat @ A3 @ B3 )
       => ( ! [B2: nat] :
              ( ( member_nat @ B2 @ ( minus_minus_set_nat @ B3 @ A3 ) )
             => ( ord_less_eq_int @ one_one_int @ ( F @ B2 ) ) )
         => ( ! [A2: nat] :
                ( ( member_nat @ A2 @ A3 )
               => ( ord_less_eq_int @ zero_zero_int @ ( F @ A2 ) ) )
           => ( ord_less_eq_int @ ( groups705719431365010083at_int @ F @ A3 ) @ ( groups705719431365010083at_int @ F @ B3 ) ) ) ) ) ) ).

% prod_mono2
thf(fact_6938_prod__mono2,axiom,
    ! [B3: set_int,A3: set_int,F: int > int] :
      ( ( finite_finite_int @ B3 )
     => ( ( ord_less_eq_set_int @ A3 @ B3 )
       => ( ! [B2: int] :
              ( ( member_int @ B2 @ ( minus_minus_set_int @ B3 @ A3 ) )
             => ( ord_less_eq_int @ one_one_int @ ( F @ B2 ) ) )
         => ( ! [A2: int] :
                ( ( member_int @ A2 @ A3 )
               => ( ord_less_eq_int @ zero_zero_int @ ( F @ A2 ) ) )
           => ( ord_less_eq_int @ ( groups1705073143266064639nt_int @ F @ A3 ) @ ( groups1705073143266064639nt_int @ F @ B3 ) ) ) ) ) ) ).

% prod_mono2
thf(fact_6939_prod__mono2,axiom,
    ! [B3: set_set_nat,A3: set_set_nat,F: set_nat > code_integer] :
      ( ( finite1152437895449049373et_nat @ B3 )
     => ( ( ord_le6893508408891458716et_nat @ A3 @ B3 )
       => ( ! [B2: set_nat] :
              ( ( member_set_nat @ B2 @ ( minus_2163939370556025621et_nat @ B3 @ A3 ) )
             => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( F @ B2 ) ) )
         => ( ! [A2: set_nat] :
                ( ( member_set_nat @ A2 @ A3 )
               => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ A2 ) ) )
           => ( ord_le3102999989581377725nteger @ ( groups2761809935038513290nteger @ F @ A3 ) @ ( groups2761809935038513290nteger @ F @ B3 ) ) ) ) ) ) ).

% prod_mono2
thf(fact_6940_prod__mono2,axiom,
    ! [B3: set_set_nat,A3: set_set_nat,F: set_nat > rat] :
      ( ( finite1152437895449049373et_nat @ B3 )
     => ( ( ord_le6893508408891458716et_nat @ A3 @ B3 )
       => ( ! [B2: set_nat] :
              ( ( member_set_nat @ B2 @ ( minus_2163939370556025621et_nat @ B3 @ A3 ) )
             => ( ord_less_eq_rat @ one_one_rat @ ( F @ B2 ) ) )
         => ( ! [A2: set_nat] :
                ( ( member_set_nat @ A2 @ A3 )
               => ( ord_less_eq_rat @ zero_zero_rat @ ( F @ A2 ) ) )
           => ( ord_less_eq_rat @ ( groups3613417700093529605at_rat @ F @ A3 ) @ ( groups3613417700093529605at_rat @ F @ B3 ) ) ) ) ) ) ).

% prod_mono2
thf(fact_6941_prod__mono2,axiom,
    ! [B3: set_set_nat,A3: set_set_nat,F: set_nat > int] :
      ( ( finite1152437895449049373et_nat @ B3 )
     => ( ( ord_le6893508408891458716et_nat @ A3 @ B3 )
       => ( ! [B2: set_nat] :
              ( ( member_set_nat @ B2 @ ( minus_2163939370556025621et_nat @ B3 @ A3 ) )
             => ( ord_less_eq_int @ one_one_int @ ( F @ B2 ) ) )
         => ( ! [A2: set_nat] :
                ( ( member_set_nat @ A2 @ A3 )
               => ( ord_less_eq_int @ zero_zero_int @ ( F @ A2 ) ) )
           => ( ord_less_eq_int @ ( groups4246057289670975065at_int @ F @ A3 ) @ ( groups4246057289670975065at_int @ F @ B3 ) ) ) ) ) ) ).

% prod_mono2
thf(fact_6942_prod__mono2,axiom,
    ! [B3: set_Pr1261947904930325089at_nat,A3: set_Pr1261947904930325089at_nat,F: product_prod_nat_nat > code_integer] :
      ( ( finite6177210948735845034at_nat @ B3 )
     => ( ( ord_le3146513528884898305at_nat @ A3 @ B3 )
       => ( ! [B2: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ B2 @ ( minus_1356011639430497352at_nat @ B3 @ A3 ) )
             => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( F @ B2 ) ) )
         => ( ! [A2: product_prod_nat_nat] :
                ( ( member8440522571783428010at_nat @ A2 @ A3 )
               => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ A2 ) ) )
           => ( ord_le3102999989581377725nteger @ ( groups1230400874837758585nteger @ F @ A3 ) @ ( groups1230400874837758585nteger @ F @ B3 ) ) ) ) ) ) ).

% prod_mono2
thf(fact_6943_bezw__aux,axiom,
    ! [X: nat,Y3: nat] :
      ( ( semiri1314217659103216013at_int @ ( gcd_gcd_nat @ X @ Y3 ) )
      = ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ ( bezw @ X @ Y3 ) ) @ ( semiri1314217659103216013at_int @ X ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ X @ Y3 ) ) @ ( semiri1314217659103216013at_int @ Y3 ) ) ) ) ).

% bezw_aux
thf(fact_6944_and__num__eq__None__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( bit_un7362597486090784418nd_num @ M @ N )
        = none_num )
      = ( ( bit_se2773287842338716102atural @ ( numera5444537566228673987atural @ M ) @ ( numera5444537566228673987atural @ N ) )
        = zero_z2226904508553997617atural ) ) ).

% and_num_eq_None_iff
thf(fact_6945_and__num__eq__None__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( bit_un7362597486090784418nd_num @ M @ N )
        = none_num )
      = ( ( bit_se3949692690581998587nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ N ) )
        = zero_z3403309356797280102nteger ) ) ).

% and_num_eq_None_iff
thf(fact_6946_and__num__eq__None__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( bit_un7362597486090784418nd_num @ M @ N )
        = none_num )
      = ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
        = zero_zero_int ) ) ).

% and_num_eq_None_iff
thf(fact_6947_and__num__eq__None__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( bit_un7362597486090784418nd_num @ M @ N )
        = none_num )
      = ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
        = zero_zero_nat ) ) ).

% and_num_eq_None_iff
thf(fact_6948_one__or__eq,axiom,
    ! [A: code_natural] :
      ( ( bit_se9127793120404214118atural @ one_one_Code_natural @ A )
      = ( plus_p4538020629002901425atural @ A @ ( zero_n8403883297036319079atural @ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% one_or_eq
thf(fact_6949_one__or__eq,axiom,
    ! [A: code_integer] :
      ( ( bit_se1080825931792720795nteger @ one_one_Code_integer @ A )
      = ( plus_p5714425477246183910nteger @ A @ ( zero_n356916108424825756nteger @ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% one_or_eq
thf(fact_6950_one__or__eq,axiom,
    ! [A: int] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ A )
      = ( plus_plus_int @ A @ ( zero_n2684676970156552555ol_int @ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% one_or_eq
thf(fact_6951_one__or__eq,axiom,
    ! [A: nat] :
      ( ( bit_se1412395901928357646or_nat @ one_one_nat @ A )
      = ( plus_plus_nat @ A @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% one_or_eq
thf(fact_6952_or__one__eq,axiom,
    ! [A: code_natural] :
      ( ( bit_se9127793120404214118atural @ A @ one_one_Code_natural )
      = ( plus_p4538020629002901425atural @ A @ ( zero_n8403883297036319079atural @ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% or_one_eq
thf(fact_6953_or__one__eq,axiom,
    ! [A: code_integer] :
      ( ( bit_se1080825931792720795nteger @ A @ one_one_Code_integer )
      = ( plus_p5714425477246183910nteger @ A @ ( zero_n356916108424825756nteger @ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% or_one_eq
thf(fact_6954_or__one__eq,axiom,
    ! [A: int] :
      ( ( bit_se1409905431419307370or_int @ A @ one_one_int )
      = ( plus_plus_int @ A @ ( zero_n2684676970156552555ol_int @ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% or_one_eq
thf(fact_6955_or__one__eq,axiom,
    ! [A: nat] :
      ( ( bit_se1412395901928357646or_nat @ A @ one_one_nat )
      = ( plus_plus_nat @ A @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) ) ) ).

% or_one_eq
thf(fact_6956_mask__Suc__double,axiom,
    ! [N: nat] :
      ( ( bit_se943457434206027407atural @ ( suc @ N ) )
      = ( bit_se9127793120404214118atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ ( bit_se943457434206027407atural @ N ) ) ) ) ).

% mask_Suc_double
thf(fact_6957_mask__Suc__double,axiom,
    ! [N: nat] :
      ( ( bit_se2119862282449309892nteger @ ( suc @ N ) )
      = ( bit_se1080825931792720795nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( bit_se2119862282449309892nteger @ N ) ) ) ) ).

% mask_Suc_double
thf(fact_6958_mask__Suc__double,axiom,
    ! [N: nat] :
      ( ( bit_se2002935070580805687sk_nat @ ( suc @ N ) )
      = ( bit_se1412395901928357646or_nat @ one_one_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se2002935070580805687sk_nat @ N ) ) ) ) ).

% mask_Suc_double
thf(fact_6959_mask__Suc__double,axiom,
    ! [N: nat] :
      ( ( bit_se2000444600071755411sk_int @ ( suc @ N ) )
      = ( bit_se1409905431419307370or_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se2000444600071755411sk_int @ N ) ) ) ) ).

% mask_Suc_double
thf(fact_6960_numeral__and__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se2773287842338716102atural @ ( numera5444537566228673987atural @ M ) @ ( numera5444537566228673987atural @ N ) )
      = ( case_o5621594795226839503al_num @ zero_z2226904508553997617atural @ numera5444537566228673987atural @ ( bit_un7362597486090784418nd_num @ M @ N ) ) ) ).

% numeral_and_num
thf(fact_6961_numeral__and__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se3949692690581998587nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ N ) )
      = ( case_o356765784539232260er_num @ zero_z3403309356797280102nteger @ numera6620942414471956472nteger @ ( bit_un7362597486090784418nd_num @ M @ N ) ) ) ).

% numeral_and_num
thf(fact_6962_numeral__and__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_un7362597486090784418nd_num @ M @ N ) ) ) ).

% numeral_and_num
thf(fact_6963_numeral__and__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( case_option_nat_num @ zero_zero_nat @ numeral_numeral_nat @ ( bit_un7362597486090784418nd_num @ M @ N ) ) ) ).

% numeral_and_num
thf(fact_6964_Suc__0__or__eq,axiom,
    ! [N: nat] :
      ( ( bit_se1412395901928357646or_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% Suc_0_or_eq
thf(fact_6965_or__Suc__0__eq,axiom,
    ! [N: nat] :
      ( ( bit_se1412395901928357646or_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% or_Suc_0_eq
thf(fact_6966_or__nat__rec,axiom,
    ( bit_se1412395901928357646or_nat
    = ( ^ [M5: nat,N5: nat] :
          ( plus_plus_nat
          @ ( zero_n2687167440665602831ol_nat
            @ ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M5 )
              | ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N5 ) ) )
          @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se1412395901928357646or_nat @ ( divide_divide_nat @ M5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% or_nat_rec
thf(fact_6967_finite__Collect__le__nat,axiom,
    ! [K: nat] :
      ( finite_finite_nat
      @ ( collect_nat
        @ ^ [N5: nat] : ( ord_less_eq_nat @ N5 @ K ) ) ) ).

% finite_Collect_le_nat
thf(fact_6968_finite__Collect__less__nat,axiom,
    ! [K: nat] :
      ( finite_finite_nat
      @ ( collect_nat
        @ ^ [N5: nat] : ( ord_less_nat @ N5 @ K ) ) ) ).

% finite_Collect_less_nat
thf(fact_6969_finite__Collect__subsets,axiom,
    ! [A3: set_Pr958786334691620121nt_int] :
      ( ( finite2998713641127702882nt_int @ A3 )
     => ( finite8744585540193469122nt_int
        @ ( collec5210948495886036740nt_int
          @ ^ [B6: set_Pr958786334691620121nt_int] : ( ord_le2843351958646193337nt_int @ B6 @ A3 ) ) ) ) ).

% finite_Collect_subsets
thf(fact_6970_finite__Collect__subsets,axiom,
    ! [A3: set_int] :
      ( ( finite_finite_int @ A3 )
     => ( finite6197958912794628473et_int
        @ ( collect_set_int
          @ ^ [B6: set_int] : ( ord_less_eq_set_int @ B6 @ A3 ) ) ) ) ).

% finite_Collect_subsets
thf(fact_6971_finite__Collect__subsets,axiom,
    ! [A3: set_Pr1261947904930325089at_nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( finite9047747110432174090at_nat
        @ ( collec5514110066124741708at_nat
          @ ^ [B6: set_Pr1261947904930325089at_nat] : ( ord_le3146513528884898305at_nat @ B6 @ A3 ) ) ) ) ).

% finite_Collect_subsets
thf(fact_6972_finite__Collect__subsets,axiom,
    ! [A3: set_nat] :
      ( ( finite_finite_nat @ A3 )
     => ( finite1152437895449049373et_nat
        @ ( collect_set_nat
          @ ^ [B6: set_nat] : ( ord_less_eq_set_nat @ B6 @ A3 ) ) ) ) ).

% finite_Collect_subsets
thf(fact_6973_gcd__nat_Opelims,axiom,
    ! [X: nat,Xa: nat,Y3: nat] :
      ( ( ( gcd_gcd_nat @ X @ Xa )
        = Y3 )
     => ( ( accp_P4275260045618599050at_nat @ gcd_nat_rel @ ( product_Pair_nat_nat @ X @ Xa ) )
       => ~ ( ( ( ( Xa = zero_zero_nat )
               => ( Y3 = X ) )
              & ( ( Xa != zero_zero_nat )
               => ( Y3
                  = ( gcd_gcd_nat @ Xa @ ( modulo_modulo_nat @ X @ Xa ) ) ) ) )
           => ~ ( accp_P4275260045618599050at_nat @ gcd_nat_rel @ ( product_Pair_nat_nat @ X @ Xa ) ) ) ) ) ).

% gcd_nat.pelims
thf(fact_6974_finite__Collect__conjI,axiom,
    ! [P: set_Pr1261947904930325089at_nat > $o,Q: set_Pr1261947904930325089at_nat > $o] :
      ( ( ( finite9047747110432174090at_nat @ ( collec5514110066124741708at_nat @ P ) )
        | ( finite9047747110432174090at_nat @ ( collec5514110066124741708at_nat @ Q ) ) )
     => ( finite9047747110432174090at_nat
        @ ( collec5514110066124741708at_nat
          @ ^ [X4: set_Pr1261947904930325089at_nat] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) ) ) ).

% finite_Collect_conjI
thf(fact_6975_finite__Collect__conjI,axiom,
    ! [P: set_Pr958786334691620121nt_int > $o,Q: set_Pr958786334691620121nt_int > $o] :
      ( ( ( finite8744585540193469122nt_int @ ( collec5210948495886036740nt_int @ P ) )
        | ( finite8744585540193469122nt_int @ ( collec5210948495886036740nt_int @ Q ) ) )
     => ( finite8744585540193469122nt_int
        @ ( collec5210948495886036740nt_int
          @ ^ [X4: set_Pr958786334691620121nt_int] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) ) ) ).

% finite_Collect_conjI
thf(fact_6976_finite__Collect__conjI,axiom,
    ! [P: set_nat > $o,Q: set_nat > $o] :
      ( ( ( finite1152437895449049373et_nat @ ( collect_set_nat @ P ) )
        | ( finite1152437895449049373et_nat @ ( collect_set_nat @ Q ) ) )
     => ( finite1152437895449049373et_nat
        @ ( collect_set_nat
          @ ^ [X4: set_nat] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) ) ) ).

% finite_Collect_conjI
thf(fact_6977_finite__Collect__conjI,axiom,
    ! [P: nat > $o,Q: nat > $o] :
      ( ( ( finite_finite_nat @ ( collect_nat @ P ) )
        | ( finite_finite_nat @ ( collect_nat @ Q ) ) )
     => ( finite_finite_nat
        @ ( collect_nat
          @ ^ [X4: nat] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) ) ) ).

% finite_Collect_conjI
thf(fact_6978_finite__Collect__conjI,axiom,
    ! [P: int > $o,Q: int > $o] :
      ( ( ( finite_finite_int @ ( collect_int @ P ) )
        | ( finite_finite_int @ ( collect_int @ Q ) ) )
     => ( finite_finite_int
        @ ( collect_int
          @ ^ [X4: int] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) ) ) ).

% finite_Collect_conjI
thf(fact_6979_finite__Collect__conjI,axiom,
    ! [P: product_prod_nat_nat > $o,Q: product_prod_nat_nat > $o] :
      ( ( ( finite6177210948735845034at_nat @ ( collec3392354462482085612at_nat @ P ) )
        | ( finite6177210948735845034at_nat @ ( collec3392354462482085612at_nat @ Q ) ) )
     => ( finite6177210948735845034at_nat
        @ ( collec3392354462482085612at_nat
          @ ^ [X4: product_prod_nat_nat] :
              ( ( P @ X4 )
              & ( Q @ X4 ) ) ) ) ) ).

% finite_Collect_conjI
thf(fact_6980_finite__Collect__disjI,axiom,
    ! [P: set_Pr1261947904930325089at_nat > $o,Q: set_Pr1261947904930325089at_nat > $o] :
      ( ( finite9047747110432174090at_nat
        @ ( collec5514110066124741708at_nat
          @ ^ [X4: set_Pr1261947904930325089at_nat] :
              ( ( P @ X4 )
              | ( Q @ X4 ) ) ) )
      = ( ( finite9047747110432174090at_nat @ ( collec5514110066124741708at_nat @ P ) )
        & ( finite9047747110432174090at_nat @ ( collec5514110066124741708at_nat @ Q ) ) ) ) ).

% finite_Collect_disjI
thf(fact_6981_finite__Collect__disjI,axiom,
    ! [P: set_Pr958786334691620121nt_int > $o,Q: set_Pr958786334691620121nt_int > $o] :
      ( ( finite8744585540193469122nt_int
        @ ( collec5210948495886036740nt_int
          @ ^ [X4: set_Pr958786334691620121nt_int] :
              ( ( P @ X4 )
              | ( Q @ X4 ) ) ) )
      = ( ( finite8744585540193469122nt_int @ ( collec5210948495886036740nt_int @ P ) )
        & ( finite8744585540193469122nt_int @ ( collec5210948495886036740nt_int @ Q ) ) ) ) ).

% finite_Collect_disjI
thf(fact_6982_finite__Collect__disjI,axiom,
    ! [P: set_nat > $o,Q: set_nat > $o] :
      ( ( finite1152437895449049373et_nat
        @ ( collect_set_nat
          @ ^ [X4: set_nat] :
              ( ( P @ X4 )
              | ( Q @ X4 ) ) ) )
      = ( ( finite1152437895449049373et_nat @ ( collect_set_nat @ P ) )
        & ( finite1152437895449049373et_nat @ ( collect_set_nat @ Q ) ) ) ) ).

% finite_Collect_disjI
thf(fact_6983_finite__Collect__disjI,axiom,
    ! [P: nat > $o,Q: nat > $o] :
      ( ( finite_finite_nat
        @ ( collect_nat
          @ ^ [X4: nat] :
              ( ( P @ X4 )
              | ( Q @ X4 ) ) ) )
      = ( ( finite_finite_nat @ ( collect_nat @ P ) )
        & ( finite_finite_nat @ ( collect_nat @ Q ) ) ) ) ).

% finite_Collect_disjI
thf(fact_6984_finite__Collect__disjI,axiom,
    ! [P: int > $o,Q: int > $o] :
      ( ( finite_finite_int
        @ ( collect_int
          @ ^ [X4: int] :
              ( ( P @ X4 )
              | ( Q @ X4 ) ) ) )
      = ( ( finite_finite_int @ ( collect_int @ P ) )
        & ( finite_finite_int @ ( collect_int @ Q ) ) ) ) ).

% finite_Collect_disjI
thf(fact_6985_finite__Collect__disjI,axiom,
    ! [P: product_prod_nat_nat > $o,Q: product_prod_nat_nat > $o] :
      ( ( finite6177210948735845034at_nat
        @ ( collec3392354462482085612at_nat
          @ ^ [X4: product_prod_nat_nat] :
              ( ( P @ X4 )
              | ( Q @ X4 ) ) ) )
      = ( ( finite6177210948735845034at_nat @ ( collec3392354462482085612at_nat @ P ) )
        & ( finite6177210948735845034at_nat @ ( collec3392354462482085612at_nat @ Q ) ) ) ) ).

% finite_Collect_disjI
thf(fact_6986_gcd__idem__nat,axiom,
    ! [X: nat] :
      ( ( gcd_gcd_nat @ X @ X )
      = X ) ).

% gcd_idem_nat
thf(fact_6987_gcd__nat_Oright__idem,axiom,
    ! [A: nat,B: nat] :
      ( ( gcd_gcd_nat @ ( gcd_gcd_nat @ A @ B ) @ B )
      = ( gcd_gcd_nat @ A @ B ) ) ).

% gcd_nat.right_idem
thf(fact_6988_gcd__nat_Oleft__idem,axiom,
    ! [A: nat,B: nat] :
      ( ( gcd_gcd_nat @ A @ ( gcd_gcd_nat @ A @ B ) )
      = ( gcd_gcd_nat @ A @ B ) ) ).

% gcd_nat.left_idem
thf(fact_6989_gcd__nat_Oidem,axiom,
    ! [A: nat] :
      ( ( gcd_gcd_nat @ A @ A )
      = A ) ).

% gcd_nat.idem
thf(fact_6990_finite__interval__int1,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I2: int] :
            ( ( ord_less_eq_int @ A @ I2 )
            & ( ord_less_eq_int @ I2 @ B ) ) ) ) ).

% finite_interval_int1
thf(fact_6991_finite__interval__int4,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I2: int] :
            ( ( ord_less_int @ A @ I2 )
            & ( ord_less_int @ I2 @ B ) ) ) ) ).

% finite_interval_int4
thf(fact_6992_finite__interval__int2,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I2: int] :
            ( ( ord_less_eq_int @ A @ I2 )
            & ( ord_less_int @ I2 @ B ) ) ) ) ).

% finite_interval_int2
thf(fact_6993_finite__interval__int3,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I2: int] :
            ( ( ord_less_int @ A @ I2 )
            & ( ord_less_eq_int @ I2 @ B ) ) ) ) ).

% finite_interval_int3
thf(fact_6994_minus__set__def,axiom,
    ( minus_4207664762107033000at_nat
    = ( ^ [A6: set_se7855581050983116737at_nat,B6: set_se7855581050983116737at_nat] :
          ( collec5514110066124741708at_nat
          @ ( minus_7112847369788763957_nat_o
            @ ^ [X4: set_Pr1261947904930325089at_nat] : ( member2643936169264416010at_nat @ X4 @ A6 )
            @ ^ [X4: set_Pr1261947904930325089at_nat] : ( member2643936169264416010at_nat @ X4 @ B6 ) ) ) ) ) ).

% minus_set_def
thf(fact_6995_minus__set__def,axiom,
    ( minus_2612819937483484256nt_int
    = ( ^ [A6: set_se6260736226359567993nt_int,B6: set_se6260736226359567993nt_int] :
          ( collec5210948495886036740nt_int
          @ ( minus_357216186751819389_int_o
            @ ^ [X4: set_Pr958786334691620121nt_int] : ( member2340774599025711042nt_int @ X4 @ A6 )
            @ ^ [X4: set_Pr958786334691620121nt_int] : ( member2340774599025711042nt_int @ X4 @ B6 ) ) ) ) ) ).

% minus_set_def
thf(fact_6996_minus__set__def,axiom,
    ( minus_2163939370556025621et_nat
    = ( ^ [A6: set_set_nat,B6: set_set_nat] :
          ( collect_set_nat
          @ ( minus_6910147592129066416_nat_o
            @ ^ [X4: set_nat] : ( member_set_nat @ X4 @ A6 )
            @ ^ [X4: set_nat] : ( member_set_nat @ X4 @ B6 ) ) ) ) ) ).

% minus_set_def
thf(fact_6997_minus__set__def,axiom,
    ( minus_minus_set_int
    = ( ^ [A6: set_int,B6: set_int] :
          ( collect_int
          @ ( minus_minus_int_o
            @ ^ [X4: int] : ( member_int @ X4 @ A6 )
            @ ^ [X4: int] : ( member_int @ X4 @ B6 ) ) ) ) ) ).

% minus_set_def
thf(fact_6998_minus__set__def,axiom,
    ( minus_minus_set_nat
    = ( ^ [A6: set_nat,B6: set_nat] :
          ( collect_nat
          @ ( minus_minus_nat_o
            @ ^ [X4: nat] : ( member_nat @ X4 @ A6 )
            @ ^ [X4: nat] : ( member_nat @ X4 @ B6 ) ) ) ) ) ).

% minus_set_def
thf(fact_6999_set__diff__eq,axiom,
    ( minus_4207664762107033000at_nat
    = ( ^ [A6: set_se7855581050983116737at_nat,B6: set_se7855581050983116737at_nat] :
          ( collec5514110066124741708at_nat
          @ ^ [X4: set_Pr1261947904930325089at_nat] :
              ( ( member2643936169264416010at_nat @ X4 @ A6 )
              & ~ ( member2643936169264416010at_nat @ X4 @ B6 ) ) ) ) ) ).

% set_diff_eq
thf(fact_7000_set__diff__eq,axiom,
    ( minus_2612819937483484256nt_int
    = ( ^ [A6: set_se6260736226359567993nt_int,B6: set_se6260736226359567993nt_int] :
          ( collec5210948495886036740nt_int
          @ ^ [X4: set_Pr958786334691620121nt_int] :
              ( ( member2340774599025711042nt_int @ X4 @ A6 )
              & ~ ( member2340774599025711042nt_int @ X4 @ B6 ) ) ) ) ) ).

% set_diff_eq
thf(fact_7001_set__diff__eq,axiom,
    ( minus_2163939370556025621et_nat
    = ( ^ [A6: set_set_nat,B6: set_set_nat] :
          ( collect_set_nat
          @ ^ [X4: set_nat] :
              ( ( member_set_nat @ X4 @ A6 )
              & ~ ( member_set_nat @ X4 @ B6 ) ) ) ) ) ).

% set_diff_eq
thf(fact_7002_set__diff__eq,axiom,
    ( minus_minus_set_int
    = ( ^ [A6: set_int,B6: set_int] :
          ( collect_int
          @ ^ [X4: int] :
              ( ( member_int @ X4 @ A6 )
              & ~ ( member_int @ X4 @ B6 ) ) ) ) ) ).

% set_diff_eq
thf(fact_7003_set__diff__eq,axiom,
    ( minus_minus_set_nat
    = ( ^ [A6: set_nat,B6: set_nat] :
          ( collect_nat
          @ ^ [X4: nat] :
              ( ( member_nat @ X4 @ A6 )
              & ~ ( member_nat @ X4 @ B6 ) ) ) ) ) ).

% set_diff_eq
thf(fact_7004_finite__divisors__int,axiom,
    ! [I: int] :
      ( ( I != zero_zero_int )
     => ( finite_finite_int
        @ ( collect_int
          @ ^ [D2: int] : ( dvd_dvd_int @ D2 @ I ) ) ) ) ).

% finite_divisors_int
thf(fact_7005_card_Ocomp__fun__commute__on,axiom,
    ( ( comp_nat_nat_nat @ suc @ suc )
    = ( comp_nat_nat_nat @ suc @ suc ) ) ).

% card.comp_fun_commute_on
thf(fact_7006_pigeonhole__infinite__rel,axiom,
    ! [A3: set_nat,B3: set_nat,R5: nat > nat > $o] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ A3 )
             => ? [Xa2: nat] :
                  ( ( member_nat @ Xa2 @ B3 )
                  & ( R5 @ X5 @ Xa2 ) ) )
         => ? [X5: nat] :
              ( ( member_nat @ X5 @ B3 )
              & ~ ( finite_finite_nat
                  @ ( collect_nat
                    @ ^ [A4: nat] :
                        ( ( member_nat @ A4 @ A3 )
                        & ( R5 @ A4 @ X5 ) ) ) ) ) ) ) ) ).

% pigeonhole_infinite_rel
thf(fact_7007_pigeonhole__infinite__rel,axiom,
    ! [A3: set_nat,B3: set_int,R5: nat > int > $o] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ A3 )
             => ? [Xa2: int] :
                  ( ( member_int @ Xa2 @ B3 )
                  & ( R5 @ X5 @ Xa2 ) ) )
         => ? [X5: int] :
              ( ( member_int @ X5 @ B3 )
              & ~ ( finite_finite_nat
                  @ ( collect_nat
                    @ ^ [A4: nat] :
                        ( ( member_nat @ A4 @ A3 )
                        & ( R5 @ A4 @ X5 ) ) ) ) ) ) ) ) ).

% pigeonhole_infinite_rel
thf(fact_7008_pigeonhole__infinite__rel,axiom,
    ! [A3: set_int,B3: set_nat,R5: int > nat > $o] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ A3 )
             => ? [Xa2: nat] :
                  ( ( member_nat @ Xa2 @ B3 )
                  & ( R5 @ X5 @ Xa2 ) ) )
         => ? [X5: nat] :
              ( ( member_nat @ X5 @ B3 )
              & ~ ( finite_finite_int
                  @ ( collect_int
                    @ ^ [A4: int] :
                        ( ( member_int @ A4 @ A3 )
                        & ( R5 @ A4 @ X5 ) ) ) ) ) ) ) ) ).

% pigeonhole_infinite_rel
thf(fact_7009_pigeonhole__infinite__rel,axiom,
    ! [A3: set_int,B3: set_int,R5: int > int > $o] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ A3 )
             => ? [Xa2: int] :
                  ( ( member_int @ Xa2 @ B3 )
                  & ( R5 @ X5 @ Xa2 ) ) )
         => ? [X5: int] :
              ( ( member_int @ X5 @ B3 )
              & ~ ( finite_finite_int
                  @ ( collect_int
                    @ ^ [A4: int] :
                        ( ( member_int @ A4 @ A3 )
                        & ( R5 @ A4 @ X5 ) ) ) ) ) ) ) ) ).

% pigeonhole_infinite_rel
thf(fact_7010_pigeonhole__infinite__rel,axiom,
    ! [A3: set_set_nat,B3: set_nat,R5: set_nat > nat > $o] :
      ( ~ ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ! [X5: set_nat] :
              ( ( member_set_nat @ X5 @ A3 )
             => ? [Xa2: nat] :
                  ( ( member_nat @ Xa2 @ B3 )
                  & ( R5 @ X5 @ Xa2 ) ) )
         => ? [X5: nat] :
              ( ( member_nat @ X5 @ B3 )
              & ~ ( finite1152437895449049373et_nat
                  @ ( collect_set_nat
                    @ ^ [A4: set_nat] :
                        ( ( member_set_nat @ A4 @ A3 )
                        & ( R5 @ A4 @ X5 ) ) ) ) ) ) ) ) ).

% pigeonhole_infinite_rel
thf(fact_7011_pigeonhole__infinite__rel,axiom,
    ! [A3: set_set_nat,B3: set_int,R5: set_nat > int > $o] :
      ( ~ ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ! [X5: set_nat] :
              ( ( member_set_nat @ X5 @ A3 )
             => ? [Xa2: int] :
                  ( ( member_int @ Xa2 @ B3 )
                  & ( R5 @ X5 @ Xa2 ) ) )
         => ? [X5: int] :
              ( ( member_int @ X5 @ B3 )
              & ~ ( finite1152437895449049373et_nat
                  @ ( collect_set_nat
                    @ ^ [A4: set_nat] :
                        ( ( member_set_nat @ A4 @ A3 )
                        & ( R5 @ A4 @ X5 ) ) ) ) ) ) ) ) ).

% pigeonhole_infinite_rel
thf(fact_7012_pigeonhole__infinite__rel,axiom,
    ! [A3: set_nat,B3: set_Pr1261947904930325089at_nat,R5: nat > product_prod_nat_nat > $o] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( finite6177210948735845034at_nat @ B3 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ A3 )
             => ? [Xa2: product_prod_nat_nat] :
                  ( ( member8440522571783428010at_nat @ Xa2 @ B3 )
                  & ( R5 @ X5 @ Xa2 ) ) )
         => ? [X5: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ X5 @ B3 )
              & ~ ( finite_finite_nat
                  @ ( collect_nat
                    @ ^ [A4: nat] :
                        ( ( member_nat @ A4 @ A3 )
                        & ( R5 @ A4 @ X5 ) ) ) ) ) ) ) ) ).

% pigeonhole_infinite_rel
thf(fact_7013_pigeonhole__infinite__rel,axiom,
    ! [A3: set_int,B3: set_Pr1261947904930325089at_nat,R5: int > product_prod_nat_nat > $o] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( finite6177210948735845034at_nat @ B3 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ A3 )
             => ? [Xa2: product_prod_nat_nat] :
                  ( ( member8440522571783428010at_nat @ Xa2 @ B3 )
                  & ( R5 @ X5 @ Xa2 ) ) )
         => ? [X5: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ X5 @ B3 )
              & ~ ( finite_finite_int
                  @ ( collect_int
                    @ ^ [A4: int] :
                        ( ( member_int @ A4 @ A3 )
                        & ( R5 @ A4 @ X5 ) ) ) ) ) ) ) ) ).

% pigeonhole_infinite_rel
thf(fact_7014_pigeonhole__infinite__rel,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,B3: set_nat,R5: product_prod_nat_nat > nat > $o] :
      ( ~ ( finite6177210948735845034at_nat @ A3 )
     => ( ( finite_finite_nat @ B3 )
       => ( ! [X5: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ X5 @ A3 )
             => ? [Xa2: nat] :
                  ( ( member_nat @ Xa2 @ B3 )
                  & ( R5 @ X5 @ Xa2 ) ) )
         => ? [X5: nat] :
              ( ( member_nat @ X5 @ B3 )
              & ~ ( finite6177210948735845034at_nat
                  @ ( collec3392354462482085612at_nat
                    @ ^ [A4: product_prod_nat_nat] :
                        ( ( member8440522571783428010at_nat @ A4 @ A3 )
                        & ( R5 @ A4 @ X5 ) ) ) ) ) ) ) ) ).

% pigeonhole_infinite_rel
thf(fact_7015_pigeonhole__infinite__rel,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,B3: set_int,R5: product_prod_nat_nat > int > $o] :
      ( ~ ( finite6177210948735845034at_nat @ A3 )
     => ( ( finite_finite_int @ B3 )
       => ( ! [X5: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ X5 @ A3 )
             => ? [Xa2: int] :
                  ( ( member_int @ Xa2 @ B3 )
                  & ( R5 @ X5 @ Xa2 ) ) )
         => ? [X5: int] :
              ( ( member_int @ X5 @ B3 )
              & ~ ( finite6177210948735845034at_nat
                  @ ( collec3392354462482085612at_nat
                    @ ^ [A4: product_prod_nat_nat] :
                        ( ( member8440522571783428010at_nat @ A4 @ A3 )
                        & ( R5 @ A4 @ X5 ) ) ) ) ) ) ) ) ).

% pigeonhole_infinite_rel
thf(fact_7016_not__finite__existsD,axiom,
    ! [P: set_Pr1261947904930325089at_nat > $o] :
      ( ~ ( finite9047747110432174090at_nat @ ( collec5514110066124741708at_nat @ P ) )
     => ? [X_12: set_Pr1261947904930325089at_nat] : ( P @ X_12 ) ) ).

% not_finite_existsD
thf(fact_7017_not__finite__existsD,axiom,
    ! [P: set_Pr958786334691620121nt_int > $o] :
      ( ~ ( finite8744585540193469122nt_int @ ( collec5210948495886036740nt_int @ P ) )
     => ? [X_12: set_Pr958786334691620121nt_int] : ( P @ X_12 ) ) ).

% not_finite_existsD
thf(fact_7018_not__finite__existsD,axiom,
    ! [P: set_nat > $o] :
      ( ~ ( finite1152437895449049373et_nat @ ( collect_set_nat @ P ) )
     => ? [X_12: set_nat] : ( P @ X_12 ) ) ).

% not_finite_existsD
thf(fact_7019_not__finite__existsD,axiom,
    ! [P: nat > $o] :
      ( ~ ( finite_finite_nat @ ( collect_nat @ P ) )
     => ? [X_12: nat] : ( P @ X_12 ) ) ).

% not_finite_existsD
thf(fact_7020_not__finite__existsD,axiom,
    ! [P: int > $o] :
      ( ~ ( finite_finite_int @ ( collect_int @ P ) )
     => ? [X_12: int] : ( P @ X_12 ) ) ).

% not_finite_existsD
thf(fact_7021_not__finite__existsD,axiom,
    ! [P: product_prod_nat_nat > $o] :
      ( ~ ( finite6177210948735845034at_nat @ ( collec3392354462482085612at_nat @ P ) )
     => ? [X_12: product_prod_nat_nat] : ( P @ X_12 ) ) ).

% not_finite_existsD
thf(fact_7022_in__finite__psubset,axiom,
    ! [A3: set_nat,B3: set_nat] :
      ( ( member8277197624267554838et_nat @ ( produc4532415448927165861et_nat @ A3 @ B3 ) @ finite_psubset_nat )
      = ( ( ord_less_set_nat @ A3 @ B3 )
        & ( finite_finite_nat @ B3 ) ) ) ).

% in_finite_psubset
thf(fact_7023_in__finite__psubset,axiom,
    ! [A3: set_int,B3: set_int] :
      ( ( member2572552093476627150et_int @ ( produc6363374080413544029et_int @ A3 @ B3 ) @ finite_psubset_int )
      = ( ( ord_less_set_int @ A3 @ B3 )
        & ( finite_finite_int @ B3 ) ) ) ).

% in_finite_psubset
thf(fact_7024_in__finite__psubset,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,B3: set_Pr1261947904930325089at_nat] :
      ( ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ A3 @ B3 ) @ finite469560695537375940at_nat )
      = ( ( ord_le7866589430770878221at_nat @ A3 @ B3 )
        & ( finite6177210948735845034at_nat @ B3 ) ) ) ).

% in_finite_psubset
thf(fact_7025_even__set__encode__iff,axiom,
    ! [A3: set_nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( nat_set_encode @ A3 ) )
        = ( ~ ( member_nat @ zero_zero_nat @ A3 ) ) ) ) ).

% even_set_encode_iff
thf(fact_7026_or__nat__unfold,axiom,
    ( bit_se1412395901928357646or_nat
    = ( ^ [M5: nat,N5: nat] : ( if_nat @ ( M5 = zero_zero_nat ) @ N5 @ ( if_nat @ ( N5 = zero_zero_nat ) @ M5 @ ( plus_plus_nat @ ( ord_max_nat @ ( modulo_modulo_nat @ M5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ N5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se1412395901928357646or_nat @ ( divide_divide_nat @ M5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N5 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% or_nat_unfold
thf(fact_7027_even__sum__iff,axiom,
    ! [A3: set_Product_unit,F: product_unit > int] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( groups8764306707065906943it_int @ F @ A3 ) )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
          @ ( finite410649719033368117t_unit
            @ ( collect_Product_unit
              @ ^ [A4: product_unit] :
                  ( ( member_Product_unit @ A4 @ A3 )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( F @ A4 ) ) ) ) ) ) ) ) ).

% even_sum_iff
thf(fact_7028_even__sum__iff,axiom,
    ! [A3: set_nat,F: nat > int] :
      ( ( finite_finite_nat @ A3 )
     => ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( groups3539618377306564664at_int @ F @ A3 ) )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
          @ ( finite_card_nat
            @ ( collect_nat
              @ ^ [A4: nat] :
                  ( ( member_nat @ A4 @ A3 )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( F @ A4 ) ) ) ) ) ) ) ) ).

% even_sum_iff
thf(fact_7029_even__sum__iff,axiom,
    ! [A3: set_Product_unit,F: product_unit > nat] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( groups8766797177574957219it_nat @ F @ A3 ) )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
          @ ( finite410649719033368117t_unit
            @ ( collect_Product_unit
              @ ^ [A4: product_unit] :
                  ( ( member_Product_unit @ A4 @ A3 )
                  & ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( F @ A4 ) ) ) ) ) ) ) ) ).

% even_sum_iff
thf(fact_7030_even__sum__iff,axiom,
    ! [A3: set_int,F: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( groups4541462559716669496nt_nat @ F @ A3 ) )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
          @ ( finite_card_int
            @ ( collect_int
              @ ^ [A4: int] :
                  ( ( member_int @ A4 @ A3 )
                  & ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( F @ A4 ) ) ) ) ) ) ) ) ).

% even_sum_iff
thf(fact_7031_even__sum__iff,axiom,
    ! [A3: set_Product_unit,F: product_unit > code_integer] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( groups5393439102872367408nteger @ F @ A3 ) )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
          @ ( finite410649719033368117t_unit
            @ ( collect_Product_unit
              @ ^ [A4: product_unit] :
                  ( ( member_Product_unit @ A4 @ A3 )
                  & ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( F @ A4 ) ) ) ) ) ) ) ) ).

% even_sum_iff
thf(fact_7032_even__sum__iff,axiom,
    ! [A3: set_nat,F: nat > code_integer] :
      ( ( finite_finite_nat @ A3 )
     => ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( groups7501900531339628137nteger @ F @ A3 ) )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
          @ ( finite_card_nat
            @ ( collect_nat
              @ ^ [A4: nat] :
                  ( ( member_nat @ A4 @ A3 )
                  & ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( F @ A4 ) ) ) ) ) ) ) ) ).

% even_sum_iff
thf(fact_7033_even__sum__iff,axiom,
    ! [A3: set_int,F: int > code_integer] :
      ( ( finite_finite_int @ A3 )
     => ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( groups7873554091576472773nteger @ F @ A3 ) )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
          @ ( finite_card_int
            @ ( collect_int
              @ ^ [A4: int] :
                  ( ( member_int @ A4 @ A3 )
                  & ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( F @ A4 ) ) ) ) ) ) ) ) ).

% even_sum_iff
thf(fact_7034_even__sum__iff,axiom,
    ! [A3: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( groups3542108847815614940at_nat @ F @ A3 ) )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
          @ ( finite_card_nat
            @ ( collect_nat
              @ ^ [A4: nat] :
                  ( ( member_nat @ A4 @ A3 )
                  & ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( F @ A4 ) ) ) ) ) ) ) ) ).

% even_sum_iff
thf(fact_7035_even__sum__iff,axiom,
    ! [A3: set_int,F: int > int] :
      ( ( finite_finite_int @ A3 )
     => ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( groups4538972089207619220nt_int @ F @ A3 ) )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
          @ ( finite_card_int
            @ ( collect_int
              @ ^ [A4: int] :
                  ( ( member_int @ A4 @ A3 )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( F @ A4 ) ) ) ) ) ) ) ) ).

% even_sum_iff
thf(fact_7036_even__sum__iff,axiom,
    ! [A3: set_set_nat,F: set_nat > int] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( groups8292507037921071086at_int @ F @ A3 ) )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) )
          @ ( finite_card_set_nat
            @ ( collect_set_nat
              @ ^ [A4: set_nat] :
                  ( ( member_set_nat @ A4 @ A3 )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( F @ A4 ) ) ) ) ) ) ) ) ).

% even_sum_iff
thf(fact_7037_drop__bit__rec,axiom,
    ( bit_se8568078237143864401it_int
    = ( ^ [N5: nat,A4: int] : ( if_int @ ( N5 = zero_zero_nat ) @ A4 @ ( bit_se8568078237143864401it_int @ ( minus_minus_nat @ N5 @ one_one_nat ) @ ( divide_divide_int @ A4 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ).

% drop_bit_rec
thf(fact_7038_drop__bit__rec,axiom,
    ( bit_se3928097537394005634nteger
    = ( ^ [N5: nat,A4: code_integer] : ( if_Code_integer @ ( N5 = zero_zero_nat ) @ A4 @ ( bit_se3928097537394005634nteger @ ( minus_minus_nat @ N5 @ one_one_nat ) @ ( divide6298287555418463151nteger @ A4 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% drop_bit_rec
thf(fact_7039_drop__bit__rec,axiom,
    ( bit_se2751692689150723149atural
    = ( ^ [N5: nat,A4: code_natural] : ( if_Code_natural @ ( N5 = zero_zero_nat ) @ A4 @ ( bit_se2751692689150723149atural @ ( minus_minus_nat @ N5 @ one_one_nat ) @ ( divide5121882707175180666atural @ A4 @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) ) ) ) ) ).

% drop_bit_rec
thf(fact_7040_drop__bit__rec,axiom,
    ( bit_se8570568707652914677it_nat
    = ( ^ [N5: nat,A4: nat] : ( if_nat @ ( N5 = zero_zero_nat ) @ A4 @ ( bit_se8570568707652914677it_nat @ ( minus_minus_nat @ N5 @ one_one_nat ) @ ( divide_divide_nat @ A4 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ).

% drop_bit_rec
thf(fact_7041_finite__psubset__def,axiom,
    ( finite_psubset_nat
    = ( collec6662362479098859352et_nat
      @ ( produc6247414631856714078_nat_o
        @ ^ [A6: set_nat,B6: set_nat] :
            ( ( ord_less_set_nat @ A6 @ B6 )
            & ( finite_finite_nat @ B6 ) ) ) ) ) ).

% finite_psubset_def
thf(fact_7042_finite__psubset__def,axiom,
    ( finite_psubset_int
    = ( collec957716948307931664et_int
      @ ( produc4109468873575309990_int_o
        @ ^ [A6: set_int,B6: set_int] :
            ( ( ord_less_set_int @ A6 @ B6 )
            & ( finite_finite_int @ B6 ) ) ) ) ) ).

% finite_psubset_def
thf(fact_7043_finite__psubset__def,axiom,
    ( finite469560695537375940at_nat
    = ( collec6321179662152712658at_nat
      @ ( produc410239310623530412_nat_o
        @ ^ [A6: set_Pr1261947904930325089at_nat,B6: set_Pr1261947904930325089at_nat] :
            ( ( ord_le7866589430770878221at_nat @ A6 @ B6 )
            & ( finite6177210948735845034at_nat @ B6 ) ) ) ) ) ).

% finite_psubset_def
thf(fact_7044_card__Collect__less__nat,axiom,
    ! [N: nat] :
      ( ( finite_card_nat
        @ ( collect_nat
          @ ^ [I2: nat] : ( ord_less_nat @ I2 @ N ) ) )
      = N ) ).

% card_Collect_less_nat
thf(fact_7045_drop__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se8568078237143864401it_int @ N @ zero_zero_int )
      = zero_zero_int ) ).

% drop_bit_of_0
thf(fact_7046_drop__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se3928097537394005634nteger @ N @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% drop_bit_of_0
thf(fact_7047_drop__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se2751692689150723149atural @ N @ zero_z2226904508553997617atural )
      = zero_z2226904508553997617atural ) ).

% drop_bit_of_0
thf(fact_7048_drop__bit__of__0,axiom,
    ! [N: nat] :
      ( ( bit_se8570568707652914677it_nat @ N @ zero_zero_nat )
      = zero_zero_nat ) ).

% drop_bit_of_0
thf(fact_7049_drop__bit__drop__bit,axiom,
    ! [M: nat,N: nat,A: nat] :
      ( ( bit_se8570568707652914677it_nat @ M @ ( bit_se8570568707652914677it_nat @ N @ A ) )
      = ( bit_se8570568707652914677it_nat @ ( plus_plus_nat @ M @ N ) @ A ) ) ).

% drop_bit_drop_bit
thf(fact_7050_of__bool__or__iff,axiom,
    ! [P: $o,Q: $o] :
      ( ( zero_n2684676970156552555ol_int
        @ ( P
          | Q ) )
      = ( ord_max_int @ ( zero_n2684676970156552555ol_int @ P ) @ ( zero_n2684676970156552555ol_int @ Q ) ) ) ).

% of_bool_or_iff
thf(fact_7051_of__bool__or__iff,axiom,
    ! [P: $o,Q: $o] :
      ( ( zero_n2687167440665602831ol_nat
        @ ( P
          | Q ) )
      = ( ord_max_nat @ ( zero_n2687167440665602831ol_nat @ P ) @ ( zero_n2687167440665602831ol_nat @ Q ) ) ) ).

% of_bool_or_iff
thf(fact_7052_max__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_max_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( suc @ ( ord_max_nat @ M @ N ) ) ) ).

% max_Suc_Suc
thf(fact_7053_max__0R,axiom,
    ! [N: nat] :
      ( ( ord_max_nat @ N @ zero_zero_nat )
      = N ) ).

% max_0R
thf(fact_7054_max__0L,axiom,
    ! [N: nat] :
      ( ( ord_max_nat @ zero_zero_nat @ N )
      = N ) ).

% max_0L
thf(fact_7055_max__nat_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( ord_max_nat @ A @ zero_zero_nat )
      = A ) ).

% max_nat.right_neutral
thf(fact_7056_max__nat_Oneutr__eq__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( zero_zero_nat
        = ( ord_max_nat @ A @ B ) )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% max_nat.neutr_eq_iff
thf(fact_7057_max__nat_Oleft__neutral,axiom,
    ! [A: nat] :
      ( ( ord_max_nat @ zero_zero_nat @ A )
      = A ) ).

% max_nat.left_neutral
thf(fact_7058_max__nat_Oeq__neutr__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_max_nat @ A @ B )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% max_nat.eq_neutr_iff
thf(fact_7059_card__Collect__le__nat,axiom,
    ! [N: nat] :
      ( ( finite_card_nat
        @ ( collect_nat
          @ ^ [I2: nat] : ( ord_less_eq_nat @ I2 @ N ) ) )
      = ( suc @ N ) ) ).

% card_Collect_le_nat
thf(fact_7060_max__0__1_I4_J,axiom,
    ! [X: num] :
      ( ( ord_max_Code_natural @ ( numera5444537566228673987atural @ X ) @ zero_z2226904508553997617atural )
      = ( numera5444537566228673987atural @ X ) ) ).

% max_0_1(4)
thf(fact_7061_max__0__1_I4_J,axiom,
    ! [X: num] :
      ( ( ord_max_int @ ( numeral_numeral_int @ X ) @ zero_zero_int )
      = ( numeral_numeral_int @ X ) ) ).

% max_0_1(4)
thf(fact_7062_max__0__1_I4_J,axiom,
    ! [X: num] :
      ( ( ord_max_nat @ ( numeral_numeral_nat @ X ) @ zero_zero_nat )
      = ( numeral_numeral_nat @ X ) ) ).

% max_0_1(4)
thf(fact_7063_max__0__1_I4_J,axiom,
    ! [X: num] :
      ( ( ord_max_Code_integer @ ( numera6620942414471956472nteger @ X ) @ zero_z3403309356797280102nteger )
      = ( numera6620942414471956472nteger @ X ) ) ).

% max_0_1(4)
thf(fact_7064_max__0__1_I4_J,axiom,
    ! [X: num] :
      ( ( ord_max_rat @ ( numeral_numeral_rat @ X ) @ zero_zero_rat )
      = ( numeral_numeral_rat @ X ) ) ).

% max_0_1(4)
thf(fact_7065_max__0__1_I3_J,axiom,
    ! [X: num] :
      ( ( ord_max_Code_natural @ zero_z2226904508553997617atural @ ( numera5444537566228673987atural @ X ) )
      = ( numera5444537566228673987atural @ X ) ) ).

% max_0_1(3)
thf(fact_7066_max__0__1_I3_J,axiom,
    ! [X: num] :
      ( ( ord_max_int @ zero_zero_int @ ( numeral_numeral_int @ X ) )
      = ( numeral_numeral_int @ X ) ) ).

% max_0_1(3)
thf(fact_7067_max__0__1_I3_J,axiom,
    ! [X: num] :
      ( ( ord_max_nat @ zero_zero_nat @ ( numeral_numeral_nat @ X ) )
      = ( numeral_numeral_nat @ X ) ) ).

% max_0_1(3)
thf(fact_7068_max__0__1_I3_J,axiom,
    ! [X: num] :
      ( ( ord_max_Code_integer @ zero_z3403309356797280102nteger @ ( numera6620942414471956472nteger @ X ) )
      = ( numera6620942414471956472nteger @ X ) ) ).

% max_0_1(3)
thf(fact_7069_max__0__1_I3_J,axiom,
    ! [X: num] :
      ( ( ord_max_rat @ zero_zero_rat @ ( numeral_numeral_rat @ X ) )
      = ( numeral_numeral_rat @ X ) ) ).

% max_0_1(3)
thf(fact_7070_max__0__1_I1_J,axiom,
    ( ( ord_max_Code_integer @ zero_z3403309356797280102nteger @ one_one_Code_integer )
    = one_one_Code_integer ) ).

% max_0_1(1)
thf(fact_7071_max__0__1_I1_J,axiom,
    ( ( ord_max_rat @ zero_zero_rat @ one_one_rat )
    = one_one_rat ) ).

% max_0_1(1)
thf(fact_7072_max__0__1_I1_J,axiom,
    ( ( ord_max_Code_natural @ zero_z2226904508553997617atural @ one_one_Code_natural )
    = one_one_Code_natural ) ).

% max_0_1(1)
thf(fact_7073_max__0__1_I1_J,axiom,
    ( ( ord_max_nat @ zero_zero_nat @ one_one_nat )
    = one_one_nat ) ).

% max_0_1(1)
thf(fact_7074_max__0__1_I1_J,axiom,
    ( ( ord_max_int @ zero_zero_int @ one_one_int )
    = one_one_int ) ).

% max_0_1(1)
thf(fact_7075_max__0__1_I2_J,axiom,
    ( ( ord_max_Code_integer @ one_one_Code_integer @ zero_z3403309356797280102nteger )
    = one_one_Code_integer ) ).

% max_0_1(2)
thf(fact_7076_max__0__1_I2_J,axiom,
    ( ( ord_max_rat @ one_one_rat @ zero_zero_rat )
    = one_one_rat ) ).

% max_0_1(2)
thf(fact_7077_max__0__1_I2_J,axiom,
    ( ( ord_max_Code_natural @ one_one_Code_natural @ zero_z2226904508553997617atural )
    = one_one_Code_natural ) ).

% max_0_1(2)
thf(fact_7078_max__0__1_I2_J,axiom,
    ( ( ord_max_nat @ one_one_nat @ zero_zero_nat )
    = one_one_nat ) ).

% max_0_1(2)
thf(fact_7079_max__0__1_I2_J,axiom,
    ( ( ord_max_int @ one_one_int @ zero_zero_int )
    = one_one_int ) ).

% max_0_1(2)
thf(fact_7080_max__0__1_I6_J,axiom,
    ! [X: num] :
      ( ( ord_max_Code_natural @ ( numera5444537566228673987atural @ X ) @ one_one_Code_natural )
      = ( numera5444537566228673987atural @ X ) ) ).

% max_0_1(6)
thf(fact_7081_max__0__1_I6_J,axiom,
    ! [X: num] :
      ( ( ord_max_int @ ( numeral_numeral_int @ X ) @ one_one_int )
      = ( numeral_numeral_int @ X ) ) ).

% max_0_1(6)
thf(fact_7082_max__0__1_I6_J,axiom,
    ! [X: num] :
      ( ( ord_max_nat @ ( numeral_numeral_nat @ X ) @ one_one_nat )
      = ( numeral_numeral_nat @ X ) ) ).

% max_0_1(6)
thf(fact_7083_max__0__1_I6_J,axiom,
    ! [X: num] :
      ( ( ord_max_Code_integer @ ( numera6620942414471956472nteger @ X ) @ one_one_Code_integer )
      = ( numera6620942414471956472nteger @ X ) ) ).

% max_0_1(6)
thf(fact_7084_max__0__1_I6_J,axiom,
    ! [X: num] :
      ( ( ord_max_rat @ ( numeral_numeral_rat @ X ) @ one_one_rat )
      = ( numeral_numeral_rat @ X ) ) ).

% max_0_1(6)
thf(fact_7085_max__0__1_I5_J,axiom,
    ! [X: num] :
      ( ( ord_max_Code_natural @ one_one_Code_natural @ ( numera5444537566228673987atural @ X ) )
      = ( numera5444537566228673987atural @ X ) ) ).

% max_0_1(5)
thf(fact_7086_max__0__1_I5_J,axiom,
    ! [X: num] :
      ( ( ord_max_int @ one_one_int @ ( numeral_numeral_int @ X ) )
      = ( numeral_numeral_int @ X ) ) ).

% max_0_1(5)
thf(fact_7087_max__0__1_I5_J,axiom,
    ! [X: num] :
      ( ( ord_max_nat @ one_one_nat @ ( numeral_numeral_nat @ X ) )
      = ( numeral_numeral_nat @ X ) ) ).

% max_0_1(5)
thf(fact_7088_max__0__1_I5_J,axiom,
    ! [X: num] :
      ( ( ord_max_Code_integer @ one_one_Code_integer @ ( numera6620942414471956472nteger @ X ) )
      = ( numera6620942414471956472nteger @ X ) ) ).

% max_0_1(5)
thf(fact_7089_max__0__1_I5_J,axiom,
    ! [X: num] :
      ( ( ord_max_rat @ one_one_rat @ ( numeral_numeral_rat @ X ) )
      = ( numeral_numeral_rat @ X ) ) ).

% max_0_1(5)
thf(fact_7090_card_Oinfinite,axiom,
    ! [A3: set_Product_unit] :
      ( ~ ( finite4290736615968046902t_unit @ A3 )
     => ( ( finite410649719033368117t_unit @ A3 )
        = zero_zero_nat ) ) ).

% card.infinite
thf(fact_7091_card_Oinfinite,axiom,
    ! [A3: set_set_nat] :
      ( ~ ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite_card_set_nat @ A3 )
        = zero_zero_nat ) ) ).

% card.infinite
thf(fact_7092_card_Oinfinite,axiom,
    ! [A3: set_list_nat] :
      ( ~ ( finite8100373058378681591st_nat @ A3 )
     => ( ( finite_card_list_nat @ A3 )
        = zero_zero_nat ) ) ).

% card.infinite
thf(fact_7093_card_Oinfinite,axiom,
    ! [A3: set_nat] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( finite_card_nat @ A3 )
        = zero_zero_nat ) ) ).

% card.infinite
thf(fact_7094_card_Oinfinite,axiom,
    ! [A3: set_int] :
      ( ~ ( finite_finite_int @ A3 )
     => ( ( finite_card_int @ A3 )
        = zero_zero_nat ) ) ).

% card.infinite
thf(fact_7095_card_Oinfinite,axiom,
    ! [A3: set_Pr1261947904930325089at_nat] :
      ( ~ ( finite6177210948735845034at_nat @ A3 )
     => ( ( finite711546835091564841at_nat @ A3 )
        = zero_zero_nat ) ) ).

% card.infinite
thf(fact_7096_drop__bit__of__bool,axiom,
    ! [N: nat,B: $o] :
      ( ( bit_se8568078237143864401it_int @ N @ ( zero_n2684676970156552555ol_int @ B ) )
      = ( zero_n2684676970156552555ol_int
        @ ( ( N = zero_zero_nat )
          & B ) ) ) ).

% drop_bit_of_bool
thf(fact_7097_drop__bit__of__bool,axiom,
    ! [N: nat,B: $o] :
      ( ( bit_se8570568707652914677it_nat @ N @ ( zero_n2687167440665602831ol_nat @ B ) )
      = ( zero_n2687167440665602831ol_nat
        @ ( ( N = zero_zero_nat )
          & B ) ) ) ).

% drop_bit_of_bool
thf(fact_7098_drop__bit__of__Suc__0,axiom,
    ! [N: nat] :
      ( ( bit_se8570568707652914677it_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( zero_n2687167440665602831ol_nat @ ( N = zero_zero_nat ) ) ) ).

% drop_bit_of_Suc_0
thf(fact_7099_prod__constant,axiom,
    ! [Y3: nat,A3: set_Product_unit] :
      ( ( groups396421249026171384it_nat
        @ ^ [X4: product_unit] : Y3
        @ A3 )
      = ( power_power_nat @ Y3 @ ( finite410649719033368117t_unit @ A3 ) ) ) ).

% prod_constant
thf(fact_7100_prod__constant,axiom,
    ! [Y3: nat,A3: set_set_nat] :
      ( ( groups4248547760180025341at_nat
        @ ^ [X4: set_nat] : Y3
        @ A3 )
      = ( power_power_nat @ Y3 @ ( finite_card_set_nat @ A3 ) ) ) ).

% prod_constant
thf(fact_7101_prod__constant,axiom,
    ! [Y3: nat,A3: set_list_nat] :
      ( ( groups2907647131375434839at_nat
        @ ^ [X4: list_nat] : Y3
        @ A3 )
      = ( power_power_nat @ Y3 @ ( finite_card_list_nat @ A3 ) ) ) ).

% prod_constant
thf(fact_7102_prod__constant,axiom,
    ! [Y3: int,A3: set_Product_unit] :
      ( ( groups393930778517121108it_int
        @ ^ [X4: product_unit] : Y3
        @ A3 )
      = ( power_power_int @ Y3 @ ( finite410649719033368117t_unit @ A3 ) ) ) ).

% prod_constant
thf(fact_7103_prod__constant,axiom,
    ! [Y3: int,A3: set_set_nat] :
      ( ( groups4246057289670975065at_int
        @ ^ [X4: set_nat] : Y3
        @ A3 )
      = ( power_power_int @ Y3 @ ( finite_card_set_nat @ A3 ) ) ) ).

% prod_constant
thf(fact_7104_prod__constant,axiom,
    ! [Y3: int,A3: set_list_nat] :
      ( ( groups2905156660866384563at_int
        @ ^ [X4: list_nat] : Y3
        @ A3 )
      = ( power_power_int @ Y3 @ ( finite_card_list_nat @ A3 ) ) ) ).

% prod_constant
thf(fact_7105_prod__constant,axiom,
    ! [Y3: nat,A3: set_nat] :
      ( ( groups708209901874060359at_nat
        @ ^ [X4: nat] : Y3
        @ A3 )
      = ( power_power_nat @ Y3 @ ( finite_card_nat @ A3 ) ) ) ).

% prod_constant
thf(fact_7106_prod__constant,axiom,
    ! [Y3: int,A3: set_nat] :
      ( ( groups705719431365010083at_int
        @ ^ [X4: nat] : Y3
        @ A3 )
      = ( power_power_int @ Y3 @ ( finite_card_nat @ A3 ) ) ) ).

% prod_constant
thf(fact_7107_prod__constant,axiom,
    ! [Y3: int,A3: set_int] :
      ( ( groups1705073143266064639nt_int
        @ ^ [X4: int] : Y3
        @ A3 )
      = ( power_power_int @ Y3 @ ( finite_card_int @ A3 ) ) ) ).

% prod_constant
thf(fact_7108_drop__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se3928097537394005634nteger @ N @ one_one_Code_integer )
      = ( zero_n356916108424825756nteger @ ( N = zero_zero_nat ) ) ) ).

% drop_bit_of_1
thf(fact_7109_drop__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se2751692689150723149atural @ N @ one_one_Code_natural )
      = ( zero_n8403883297036319079atural @ ( N = zero_zero_nat ) ) ) ).

% drop_bit_of_1
thf(fact_7110_drop__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se8568078237143864401it_int @ N @ one_one_int )
      = ( zero_n2684676970156552555ol_int @ ( N = zero_zero_nat ) ) ) ).

% drop_bit_of_1
thf(fact_7111_drop__bit__of__1,axiom,
    ! [N: nat] :
      ( ( bit_se8570568707652914677it_nat @ N @ one_one_nat )
      = ( zero_n2687167440665602831ol_nat @ ( N = zero_zero_nat ) ) ) ).

% drop_bit_of_1
thf(fact_7112_sum__constant,axiom,
    ! [Y3: code_integer,A3: set_nat] :
      ( ( groups7501900531339628137nteger
        @ ^ [X4: nat] : Y3
        @ A3 )
      = ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ ( finite_card_nat @ A3 ) ) @ Y3 ) ) ).

% sum_constant
thf(fact_7113_sum__constant,axiom,
    ! [Y3: code_integer,A3: set_Product_unit] :
      ( ( groups5393439102872367408nteger
        @ ^ [X4: product_unit] : Y3
        @ A3 )
      = ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ ( finite410649719033368117t_unit @ A3 ) ) @ Y3 ) ) ).

% sum_constant
thf(fact_7114_sum__constant,axiom,
    ! [Y3: rat,A3: set_nat] :
      ( ( groups2906978787729119204at_rat
        @ ^ [X4: nat] : Y3
        @ A3 )
      = ( times_times_rat @ ( semiri681578069525770553at_rat @ ( finite_card_nat @ A3 ) ) @ Y3 ) ) ).

% sum_constant
thf(fact_7115_sum__constant,axiom,
    ! [Y3: rat,A3: set_Product_unit] :
      ( ( groups8131667117488461483it_rat
        @ ^ [X4: product_unit] : Y3
        @ A3 )
      = ( times_times_rat @ ( semiri681578069525770553at_rat @ ( finite410649719033368117t_unit @ A3 ) ) @ Y3 ) ) ).

% sum_constant
thf(fact_7116_sum__constant,axiom,
    ! [Y3: int,A3: set_nat] :
      ( ( groups3539618377306564664at_int
        @ ^ [X4: nat] : Y3
        @ A3 )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ ( finite_card_nat @ A3 ) ) @ Y3 ) ) ).

% sum_constant
thf(fact_7117_sum__constant,axiom,
    ! [Y3: int,A3: set_Product_unit] :
      ( ( groups8764306707065906943it_int
        @ ^ [X4: product_unit] : Y3
        @ A3 )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ ( finite410649719033368117t_unit @ A3 ) ) @ Y3 ) ) ).

% sum_constant
thf(fact_7118_sum__constant,axiom,
    ! [Y3: nat,A3: set_Product_unit] :
      ( ( groups8766797177574957219it_nat
        @ ^ [X4: product_unit] : Y3
        @ A3 )
      = ( times_times_nat @ ( semiri1316708129612266289at_nat @ ( finite410649719033368117t_unit @ A3 ) ) @ Y3 ) ) ).

% sum_constant
thf(fact_7119_sum__constant,axiom,
    ! [Y3: nat,A3: set_nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : Y3
        @ A3 )
      = ( times_times_nat @ ( semiri1316708129612266289at_nat @ ( finite_card_nat @ A3 ) ) @ Y3 ) ) ).

% sum_constant
thf(fact_7120_sum__constant,axiom,
    ! [Y3: int,A3: set_int] :
      ( ( groups4538972089207619220nt_int
        @ ^ [X4: int] : Y3
        @ A3 )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ ( finite_card_int @ A3 ) ) @ Y3 ) ) ).

% sum_constant
thf(fact_7121_sum__constant,axiom,
    ! [Y3: code_integer,A3: set_set_nat] :
      ( ( groups9190459664516455967nteger
        @ ^ [X4: set_nat] : Y3
        @ A3 )
      = ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ ( finite_card_set_nat @ A3 ) ) @ Y3 ) ) ).

% sum_constant
thf(fact_7122_max__add__distrib__left,axiom,
    ! [X: rat,Y3: rat,Z: rat] :
      ( ( plus_plus_rat @ ( ord_max_rat @ X @ Y3 ) @ Z )
      = ( ord_max_rat @ ( plus_plus_rat @ X @ Z ) @ ( plus_plus_rat @ Y3 @ Z ) ) ) ).

% max_add_distrib_left
thf(fact_7123_max__add__distrib__left,axiom,
    ! [X: nat,Y3: nat,Z: nat] :
      ( ( plus_plus_nat @ ( ord_max_nat @ X @ Y3 ) @ Z )
      = ( ord_max_nat @ ( plus_plus_nat @ X @ Z ) @ ( plus_plus_nat @ Y3 @ Z ) ) ) ).

% max_add_distrib_left
thf(fact_7124_max__add__distrib__left,axiom,
    ! [X: int,Y3: int,Z: int] :
      ( ( plus_plus_int @ ( ord_max_int @ X @ Y3 ) @ Z )
      = ( ord_max_int @ ( plus_plus_int @ X @ Z ) @ ( plus_plus_int @ Y3 @ Z ) ) ) ).

% max_add_distrib_left
thf(fact_7125_max__add__distrib__right,axiom,
    ! [X: rat,Y3: rat,Z: rat] :
      ( ( plus_plus_rat @ X @ ( ord_max_rat @ Y3 @ Z ) )
      = ( ord_max_rat @ ( plus_plus_rat @ X @ Y3 ) @ ( plus_plus_rat @ X @ Z ) ) ) ).

% max_add_distrib_right
thf(fact_7126_max__add__distrib__right,axiom,
    ! [X: nat,Y3: nat,Z: nat] :
      ( ( plus_plus_nat @ X @ ( ord_max_nat @ Y3 @ Z ) )
      = ( ord_max_nat @ ( plus_plus_nat @ X @ Y3 ) @ ( plus_plus_nat @ X @ Z ) ) ) ).

% max_add_distrib_right
thf(fact_7127_max__add__distrib__right,axiom,
    ! [X: int,Y3: int,Z: int] :
      ( ( plus_plus_int @ X @ ( ord_max_int @ Y3 @ Z ) )
      = ( ord_max_int @ ( plus_plus_int @ X @ Y3 ) @ ( plus_plus_int @ X @ Z ) ) ) ).

% max_add_distrib_right
thf(fact_7128_max__diff__distrib__left,axiom,
    ! [X: int,Y3: int,Z: int] :
      ( ( minus_minus_int @ ( ord_max_int @ X @ Y3 ) @ Z )
      = ( ord_max_int @ ( minus_minus_int @ X @ Z ) @ ( minus_minus_int @ Y3 @ Z ) ) ) ).

% max_diff_distrib_left
thf(fact_7129_max__diff__distrib__left,axiom,
    ! [X: code_integer,Y3: code_integer,Z: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( ord_max_Code_integer @ X @ Y3 ) @ Z )
      = ( ord_max_Code_integer @ ( minus_8373710615458151222nteger @ X @ Z ) @ ( minus_8373710615458151222nteger @ Y3 @ Z ) ) ) ).

% max_diff_distrib_left
thf(fact_7130_max__diff__distrib__left,axiom,
    ! [X: rat,Y3: rat,Z: rat] :
      ( ( minus_minus_rat @ ( ord_max_rat @ X @ Y3 ) @ Z )
      = ( ord_max_rat @ ( minus_minus_rat @ X @ Z ) @ ( minus_minus_rat @ Y3 @ Z ) ) ) ).

% max_diff_distrib_left
thf(fact_7131_of__int__max,axiom,
    ! [X: int,Y3: int] :
      ( ( ring_1_of_int_rat @ ( ord_max_int @ X @ Y3 ) )
      = ( ord_max_rat @ ( ring_1_of_int_rat @ X ) @ ( ring_1_of_int_rat @ Y3 ) ) ) ).

% of_int_max
thf(fact_7132_of__int__max,axiom,
    ! [X: int,Y3: int] :
      ( ( ring_1_of_int_int @ ( ord_max_int @ X @ Y3 ) )
      = ( ord_max_int @ ( ring_1_of_int_int @ X ) @ ( ring_1_of_int_int @ Y3 ) ) ) ).

% of_int_max
thf(fact_7133_of__nat__max,axiom,
    ! [X: nat,Y3: nat] :
      ( ( semiri1314217659103216013at_int @ ( ord_max_nat @ X @ Y3 ) )
      = ( ord_max_int @ ( semiri1314217659103216013at_int @ X ) @ ( semiri1314217659103216013at_int @ Y3 ) ) ) ).

% of_nat_max
thf(fact_7134_of__nat__max,axiom,
    ! [X: nat,Y3: nat] :
      ( ( semiri1316708129612266289at_nat @ ( ord_max_nat @ X @ Y3 ) )
      = ( ord_max_nat @ ( semiri1316708129612266289at_nat @ X ) @ ( semiri1316708129612266289at_nat @ Y3 ) ) ) ).

% of_nat_max
thf(fact_7135_nat__add__max__right,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( plus_plus_nat @ M @ ( ord_max_nat @ N @ Q2 ) )
      = ( ord_max_nat @ ( plus_plus_nat @ M @ N ) @ ( plus_plus_nat @ M @ Q2 ) ) ) ).

% nat_add_max_right
thf(fact_7136_nat__add__max__left,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( plus_plus_nat @ ( ord_max_nat @ M @ N ) @ Q2 )
      = ( ord_max_nat @ ( plus_plus_nat @ M @ Q2 ) @ ( plus_plus_nat @ N @ Q2 ) ) ) ).

% nat_add_max_left
thf(fact_7137_nat__mult__max__right,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ M @ ( ord_max_nat @ N @ Q2 ) )
      = ( ord_max_nat @ ( times_times_nat @ M @ N ) @ ( times_times_nat @ M @ Q2 ) ) ) ).

% nat_mult_max_right
thf(fact_7138_nat__mult__max__left,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ ( ord_max_nat @ M @ N ) @ Q2 )
      = ( ord_max_nat @ ( times_times_nat @ M @ Q2 ) @ ( times_times_nat @ N @ Q2 ) ) ) ).

% nat_mult_max_left
thf(fact_7139_max__def__raw,axiom,
    ( ord_max_set_nat
    = ( ^ [A4: set_nat,B4: set_nat] : ( if_set_nat @ ( ord_less_eq_set_nat @ A4 @ B4 ) @ B4 @ A4 ) ) ) ).

% max_def_raw
thf(fact_7140_max__def__raw,axiom,
    ( ord_max_rat
    = ( ^ [A4: rat,B4: rat] : ( if_rat @ ( ord_less_eq_rat @ A4 @ B4 ) @ B4 @ A4 ) ) ) ).

% max_def_raw
thf(fact_7141_max__def__raw,axiom,
    ( ord_max_num
    = ( ^ [A4: num,B4: num] : ( if_num @ ( ord_less_eq_num @ A4 @ B4 ) @ B4 @ A4 ) ) ) ).

% max_def_raw
thf(fact_7142_max__def__raw,axiom,
    ( ord_max_nat
    = ( ^ [A4: nat,B4: nat] : ( if_nat @ ( ord_less_eq_nat @ A4 @ B4 ) @ B4 @ A4 ) ) ) ).

% max_def_raw
thf(fact_7143_max__def__raw,axiom,
    ( ord_max_int
    = ( ^ [A4: int,B4: int] : ( if_int @ ( ord_less_eq_int @ A4 @ B4 ) @ B4 @ A4 ) ) ) ).

% max_def_raw
thf(fact_7144_n__subsets,axiom,
    ! [A3: set_Pr958786334691620121nt_int,K: nat] :
      ( ( finite2998713641127702882nt_int @ A3 )
     => ( ( finite4053189226111446337nt_int
          @ ( collec5210948495886036740nt_int
            @ ^ [B6: set_Pr958786334691620121nt_int] :
                ( ( ord_le2843351958646193337nt_int @ B6 @ A3 )
                & ( ( finite6756421564338198497nt_int @ B6 )
                  = K ) ) ) )
        = ( binomial @ ( finite6756421564338198497nt_int @ A3 ) @ K ) ) ) ).

% n_subsets
thf(fact_7145_n__subsets,axiom,
    ! [A3: set_Product_unit,K: nat] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( finite22775419188893461t_unit
          @ ( collec7787489603430924120t_unit
            @ ^ [B6: set_Product_unit] :
                ( ( ord_le3507040750410214029t_unit @ B6 @ A3 )
                & ( ( finite410649719033368117t_unit @ B6 )
                  = K ) ) ) )
        = ( binomial @ ( finite410649719033368117t_unit @ A3 ) @ K ) ) ) ).

% n_subsets
thf(fact_7146_n__subsets,axiom,
    ! [A3: set_set_nat,K: nat] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite1149291290879098388et_nat
          @ ( collect_set_set_nat
            @ ^ [B6: set_set_nat] :
                ( ( ord_le6893508408891458716et_nat @ B6 @ A3 )
                & ( ( finite_card_set_nat @ B6 )
                  = K ) ) ) )
        = ( binomial @ ( finite_card_set_nat @ A3 ) @ K ) ) ) ).

% n_subsets
thf(fact_7147_n__subsets,axiom,
    ! [A3: set_list_nat,K: nat] :
      ( ( finite8100373058378681591st_nat @ A3 )
     => ( ( finite2364142230527598318st_nat
          @ ( collect_set_list_nat
            @ ^ [B6: set_list_nat] :
                ( ( ord_le6045566169113846134st_nat @ B6 @ A3 )
                & ( ( finite_card_list_nat @ B6 )
                  = K ) ) ) )
        = ( binomial @ ( finite_card_list_nat @ A3 ) @ K ) ) ) ).

% n_subsets
thf(fact_7148_n__subsets,axiom,
    ! [A3: set_int,K: nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( finite_card_set_int
          @ ( collect_set_int
            @ ^ [B6: set_int] :
                ( ( ord_less_eq_set_int @ B6 @ A3 )
                & ( ( finite_card_int @ B6 )
                  = K ) ) ) )
        = ( binomial @ ( finite_card_int @ A3 ) @ K ) ) ) ).

% n_subsets
thf(fact_7149_n__subsets,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,K: nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( ( finite4356350796350151305at_nat
          @ ( collec5514110066124741708at_nat
            @ ^ [B6: set_Pr1261947904930325089at_nat] :
                ( ( ord_le3146513528884898305at_nat @ B6 @ A3 )
                & ( ( finite711546835091564841at_nat @ B6 )
                  = K ) ) ) )
        = ( binomial @ ( finite711546835091564841at_nat @ A3 ) @ K ) ) ) ).

% n_subsets
thf(fact_7150_n__subsets,axiom,
    ! [A3: set_nat,K: nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite_card_set_nat
          @ ( collect_set_nat
            @ ^ [B6: set_nat] :
                ( ( ord_less_eq_set_nat @ B6 @ A3 )
                & ( ( finite_card_nat @ B6 )
                  = K ) ) ) )
        = ( binomial @ ( finite_card_nat @ A3 ) @ K ) ) ) ).

% n_subsets
thf(fact_7151_nat__minus__add__max,axiom,
    ! [N: nat,M: nat] :
      ( ( plus_plus_nat @ ( minus_minus_nat @ N @ M ) @ M )
      = ( ord_max_nat @ N @ M ) ) ).

% nat_minus_add_max
thf(fact_7152_take__bit__eq__self__iff__drop__bit__eq__0,axiom,
    ! [N: nat,A: code_integer] :
      ( ( ( bit_se1745604003318907178nteger @ N @ A )
        = A )
      = ( ( bit_se3928097537394005634nteger @ N @ A )
        = zero_z3403309356797280102nteger ) ) ).

% take_bit_eq_self_iff_drop_bit_eq_0
thf(fact_7153_take__bit__eq__self__iff__drop__bit__eq__0,axiom,
    ! [N: nat,A: code_natural] :
      ( ( ( bit_se569199155075624693atural @ N @ A )
        = A )
      = ( ( bit_se2751692689150723149atural @ N @ A )
        = zero_z2226904508553997617atural ) ) ).

% take_bit_eq_self_iff_drop_bit_eq_0
thf(fact_7154_take__bit__eq__self__iff__drop__bit__eq__0,axiom,
    ! [N: nat,A: nat] :
      ( ( ( bit_se2925701944663578781it_nat @ N @ A )
        = A )
      = ( ( bit_se8570568707652914677it_nat @ N @ A )
        = zero_zero_nat ) ) ).

% take_bit_eq_self_iff_drop_bit_eq_0
thf(fact_7155_take__bit__eq__self__iff__drop__bit__eq__0,axiom,
    ! [N: nat,A: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ A )
        = A )
      = ( ( bit_se8568078237143864401it_int @ N @ A )
        = zero_zero_int ) ) ).

% take_bit_eq_self_iff_drop_bit_eq_0
thf(fact_7156_take__bit__drop__bit,axiom,
    ! [M: nat,N: nat,A: nat] :
      ( ( bit_se2925701944663578781it_nat @ M @ ( bit_se8570568707652914677it_nat @ N @ A ) )
      = ( bit_se8570568707652914677it_nat @ N @ ( bit_se2925701944663578781it_nat @ ( plus_plus_nat @ M @ N ) @ A ) ) ) ).

% take_bit_drop_bit
thf(fact_7157_take__bit__drop__bit,axiom,
    ! [M: nat,N: nat,A: int] :
      ( ( bit_se2923211474154528505it_int @ M @ ( bit_se8568078237143864401it_int @ N @ A ) )
      = ( bit_se8568078237143864401it_int @ N @ ( bit_se2923211474154528505it_int @ ( plus_plus_nat @ M @ N ) @ A ) ) ) ).

% take_bit_drop_bit
thf(fact_7158_sum__multicount__gen,axiom,
    ! [S: set_Product_unit,T: set_Product_unit,R5: product_unit > product_unit > $o,K: product_unit > nat] :
      ( ( finite4290736615968046902t_unit @ S )
     => ( ( finite4290736615968046902t_unit @ T )
       => ( ! [X5: product_unit] :
              ( ( member_Product_unit @ X5 @ T )
             => ( ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [I2: product_unit] :
                        ( ( member_Product_unit @ I2 @ S )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = ( K @ X5 ) ) )
         => ( ( groups8766797177574957219it_nat
              @ ^ [I2: product_unit] :
                  ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [J3: product_unit] :
                        ( ( member_Product_unit @ J3 @ T )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S )
            = ( groups8766797177574957219it_nat @ K @ T ) ) ) ) ) ).

% sum_multicount_gen
thf(fact_7159_sum__multicount__gen,axiom,
    ! [S: set_Product_unit,T: set_int,R5: product_unit > int > $o,K: int > nat] :
      ( ( finite4290736615968046902t_unit @ S )
     => ( ( finite_finite_int @ T )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T )
             => ( ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [I2: product_unit] :
                        ( ( member_Product_unit @ I2 @ S )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = ( K @ X5 ) ) )
         => ( ( groups8766797177574957219it_nat
              @ ^ [I2: product_unit] :
                  ( finite_card_int
                  @ ( collect_int
                    @ ^ [J3: int] :
                        ( ( member_int @ J3 @ T )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S )
            = ( groups4541462559716669496nt_nat @ K @ T ) ) ) ) ) ).

% sum_multicount_gen
thf(fact_7160_sum__multicount__gen,axiom,
    ! [S: set_int,T: set_Product_unit,R5: int > product_unit > $o,K: product_unit > nat] :
      ( ( finite_finite_int @ S )
     => ( ( finite4290736615968046902t_unit @ T )
       => ( ! [X5: product_unit] :
              ( ( member_Product_unit @ X5 @ T )
             => ( ( finite_card_int
                  @ ( collect_int
                    @ ^ [I2: int] :
                        ( ( member_int @ I2 @ S )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = ( K @ X5 ) ) )
         => ( ( groups4541462559716669496nt_nat
              @ ^ [I2: int] :
                  ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [J3: product_unit] :
                        ( ( member_Product_unit @ J3 @ T )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S )
            = ( groups8766797177574957219it_nat @ K @ T ) ) ) ) ) ).

% sum_multicount_gen
thf(fact_7161_sum__multicount__gen,axiom,
    ! [S: set_int,T: set_int,R5: int > int > $o,K: int > nat] :
      ( ( finite_finite_int @ S )
     => ( ( finite_finite_int @ T )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T )
             => ( ( finite_card_int
                  @ ( collect_int
                    @ ^ [I2: int] :
                        ( ( member_int @ I2 @ S )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = ( K @ X5 ) ) )
         => ( ( groups4541462559716669496nt_nat
              @ ^ [I2: int] :
                  ( finite_card_int
                  @ ( collect_int
                    @ ^ [J3: int] :
                        ( ( member_int @ J3 @ T )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S )
            = ( groups4541462559716669496nt_nat @ K @ T ) ) ) ) ) ).

% sum_multicount_gen
thf(fact_7162_sum__multicount__gen,axiom,
    ! [S: set_Product_unit,T: set_nat,R5: product_unit > nat > $o,K: nat > nat] :
      ( ( finite4290736615968046902t_unit @ S )
     => ( ( finite_finite_nat @ T )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T )
             => ( ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [I2: product_unit] :
                        ( ( member_Product_unit @ I2 @ S )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = ( K @ X5 ) ) )
         => ( ( groups8766797177574957219it_nat
              @ ^ [I2: product_unit] :
                  ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [J3: nat] :
                        ( ( member_nat @ J3 @ T )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S )
            = ( groups3542108847815614940at_nat @ K @ T ) ) ) ) ) ).

% sum_multicount_gen
thf(fact_7163_sum__multicount__gen,axiom,
    ! [S: set_int,T: set_nat,R5: int > nat > $o,K: nat > nat] :
      ( ( finite_finite_int @ S )
     => ( ( finite_finite_nat @ T )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T )
             => ( ( finite_card_int
                  @ ( collect_int
                    @ ^ [I2: int] :
                        ( ( member_int @ I2 @ S )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = ( K @ X5 ) ) )
         => ( ( groups4541462559716669496nt_nat
              @ ^ [I2: int] :
                  ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [J3: nat] :
                        ( ( member_nat @ J3 @ T )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S )
            = ( groups3542108847815614940at_nat @ K @ T ) ) ) ) ) ).

% sum_multicount_gen
thf(fact_7164_sum__multicount__gen,axiom,
    ! [S: set_nat,T: set_Product_unit,R5: nat > product_unit > $o,K: product_unit > nat] :
      ( ( finite_finite_nat @ S )
     => ( ( finite4290736615968046902t_unit @ T )
       => ( ! [X5: product_unit] :
              ( ( member_Product_unit @ X5 @ T )
             => ( ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [I2: nat] :
                        ( ( member_nat @ I2 @ S )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = ( K @ X5 ) ) )
         => ( ( groups3542108847815614940at_nat
              @ ^ [I2: nat] :
                  ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [J3: product_unit] :
                        ( ( member_Product_unit @ J3 @ T )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S )
            = ( groups8766797177574957219it_nat @ K @ T ) ) ) ) ) ).

% sum_multicount_gen
thf(fact_7165_sum__multicount__gen,axiom,
    ! [S: set_nat,T: set_int,R5: nat > int > $o,K: int > nat] :
      ( ( finite_finite_nat @ S )
     => ( ( finite_finite_int @ T )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T )
             => ( ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [I2: nat] :
                        ( ( member_nat @ I2 @ S )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = ( K @ X5 ) ) )
         => ( ( groups3542108847815614940at_nat
              @ ^ [I2: nat] :
                  ( finite_card_int
                  @ ( collect_int
                    @ ^ [J3: int] :
                        ( ( member_int @ J3 @ T )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S )
            = ( groups4541462559716669496nt_nat @ K @ T ) ) ) ) ) ).

% sum_multicount_gen
thf(fact_7166_sum__multicount__gen,axiom,
    ! [S: set_nat,T: set_nat,R5: nat > nat > $o,K: nat > nat] :
      ( ( finite_finite_nat @ S )
     => ( ( finite_finite_nat @ T )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T )
             => ( ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [I2: nat] :
                        ( ( member_nat @ I2 @ S )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = ( K @ X5 ) ) )
         => ( ( groups3542108847815614940at_nat
              @ ^ [I2: nat] :
                  ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [J3: nat] :
                        ( ( member_nat @ J3 @ T )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S )
            = ( groups3542108847815614940at_nat @ K @ T ) ) ) ) ) ).

% sum_multicount_gen
thf(fact_7167_sum__multicount__gen,axiom,
    ! [S: set_Product_unit,T: set_set_nat,R5: product_unit > set_nat > $o,K: set_nat > nat] :
      ( ( finite4290736615968046902t_unit @ S )
     => ( ( finite1152437895449049373et_nat @ T )
       => ( ! [X5: set_nat] :
              ( ( member_set_nat @ X5 @ T )
             => ( ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [I2: product_unit] :
                        ( ( member_Product_unit @ I2 @ S )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = ( K @ X5 ) ) )
         => ( ( groups8766797177574957219it_nat
              @ ^ [I2: product_unit] :
                  ( finite_card_set_nat
                  @ ( collect_set_nat
                    @ ^ [J3: set_nat] :
                        ( ( member_set_nat @ J3 @ T )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S )
            = ( groups8294997508430121362at_nat @ K @ T ) ) ) ) ) ).

% sum_multicount_gen
thf(fact_7168_card__eq__sum,axiom,
    ( finite410649719033368117t_unit
    = ( groups8766797177574957219it_nat
      @ ^ [X4: product_unit] : one_one_nat ) ) ).

% card_eq_sum
thf(fact_7169_card__eq__sum,axiom,
    ( finite_card_set_nat
    = ( groups8294997508430121362at_nat
      @ ^ [X4: set_nat] : one_one_nat ) ) ).

% card_eq_sum
thf(fact_7170_card__eq__sum,axiom,
    ( finite_card_list_nat
    = ( groups4396056296759096172at_nat
      @ ^ [X4: list_nat] : one_one_nat ) ) ).

% card_eq_sum
thf(fact_7171_card__eq__sum,axiom,
    ( finite_card_nat
    = ( groups3542108847815614940at_nat
      @ ^ [X4: nat] : one_one_nat ) ) ).

% card_eq_sum
thf(fact_7172_max__Suc2,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_max_nat @ M @ ( suc @ N ) )
      = ( case_nat_nat @ ( suc @ N )
        @ ^ [M6: nat] : ( suc @ ( ord_max_nat @ M6 @ N ) )
        @ M ) ) ).

% max_Suc2
thf(fact_7173_max__Suc1,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_max_nat @ ( suc @ N ) @ M )
      = ( case_nat_nat @ ( suc @ N )
        @ ^ [M6: nat] : ( suc @ ( ord_max_nat @ N @ M6 ) )
        @ M ) ) ).

% max_Suc1
thf(fact_7174_card__ge__0__finite,axiom,
    ! [A3: set_Product_unit] :
      ( ( ord_less_nat @ zero_zero_nat @ ( finite410649719033368117t_unit @ A3 ) )
     => ( finite4290736615968046902t_unit @ A3 ) ) ).

% card_ge_0_finite
thf(fact_7175_card__ge__0__finite,axiom,
    ! [A3: set_set_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_set_nat @ A3 ) )
     => ( finite1152437895449049373et_nat @ A3 ) ) ).

% card_ge_0_finite
thf(fact_7176_card__ge__0__finite,axiom,
    ! [A3: set_list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_list_nat @ A3 ) )
     => ( finite8100373058378681591st_nat @ A3 ) ) ).

% card_ge_0_finite
thf(fact_7177_card__ge__0__finite,axiom,
    ! [A3: set_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_nat @ A3 ) )
     => ( finite_finite_nat @ A3 ) ) ).

% card_ge_0_finite
thf(fact_7178_card__ge__0__finite,axiom,
    ! [A3: set_int] :
      ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_int @ A3 ) )
     => ( finite_finite_int @ A3 ) ) ).

% card_ge_0_finite
thf(fact_7179_card__ge__0__finite,axiom,
    ! [A3: set_Pr1261947904930325089at_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( finite711546835091564841at_nat @ A3 ) )
     => ( finite6177210948735845034at_nat @ A3 ) ) ).

% card_ge_0_finite
thf(fact_7180_card__less__Suc2,axiom,
    ! [M2: set_nat,I: nat] :
      ( ~ ( member_nat @ zero_zero_nat @ M2 )
     => ( ( finite_card_nat
          @ ( collect_nat
            @ ^ [K3: nat] :
                ( ( member_nat @ ( suc @ K3 ) @ M2 )
                & ( ord_less_nat @ K3 @ I ) ) ) )
        = ( finite_card_nat
          @ ( collect_nat
            @ ^ [K3: nat] :
                ( ( member_nat @ K3 @ M2 )
                & ( ord_less_nat @ K3 @ ( suc @ I ) ) ) ) ) ) ) ).

% card_less_Suc2
thf(fact_7181_card__less__Suc,axiom,
    ! [M2: set_nat,I: nat] :
      ( ( member_nat @ zero_zero_nat @ M2 )
     => ( ( suc
          @ ( finite_card_nat
            @ ( collect_nat
              @ ^ [K3: nat] :
                  ( ( member_nat @ ( suc @ K3 ) @ M2 )
                  & ( ord_less_nat @ K3 @ I ) ) ) ) )
        = ( finite_card_nat
          @ ( collect_nat
            @ ^ [K3: nat] :
                ( ( member_nat @ K3 @ M2 )
                & ( ord_less_nat @ K3 @ ( suc @ I ) ) ) ) ) ) ) ).

% card_less_Suc
thf(fact_7182_card__less,axiom,
    ! [M2: set_nat,I: nat] :
      ( ( member_nat @ zero_zero_nat @ M2 )
     => ( ( finite_card_nat
          @ ( collect_nat
            @ ^ [K3: nat] :
                ( ( member_nat @ K3 @ M2 )
                & ( ord_less_nat @ K3 @ ( suc @ I ) ) ) ) )
       != zero_zero_nat ) ) ).

% card_less
thf(fact_7183_sum__Suc,axiom,
    ! [F: product_unit > nat,A3: set_Product_unit] :
      ( ( groups8766797177574957219it_nat
        @ ^ [X4: product_unit] : ( suc @ ( F @ X4 ) )
        @ A3 )
      = ( plus_plus_nat @ ( groups8766797177574957219it_nat @ F @ A3 ) @ ( finite410649719033368117t_unit @ A3 ) ) ) ).

% sum_Suc
thf(fact_7184_sum__Suc,axiom,
    ! [F: set_nat > nat,A3: set_set_nat] :
      ( ( groups8294997508430121362at_nat
        @ ^ [X4: set_nat] : ( suc @ ( F @ X4 ) )
        @ A3 )
      = ( plus_plus_nat @ ( groups8294997508430121362at_nat @ F @ A3 ) @ ( finite_card_set_nat @ A3 ) ) ) ).

% sum_Suc
thf(fact_7185_sum__Suc,axiom,
    ! [F: list_nat > nat,A3: set_list_nat] :
      ( ( groups4396056296759096172at_nat
        @ ^ [X4: list_nat] : ( suc @ ( F @ X4 ) )
        @ A3 )
      = ( plus_plus_nat @ ( groups4396056296759096172at_nat @ F @ A3 ) @ ( finite_card_list_nat @ A3 ) ) ) ).

% sum_Suc
thf(fact_7186_sum__Suc,axiom,
    ! [F: nat > nat,A3: set_nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : ( suc @ ( F @ X4 ) )
        @ A3 )
      = ( plus_plus_nat @ ( groups3542108847815614940at_nat @ F @ A3 ) @ ( finite_card_nat @ A3 ) ) ) ).

% sum_Suc
thf(fact_7187_sum__multicount,axiom,
    ! [S3: set_Product_unit,T4: set_Product_unit,R5: product_unit > product_unit > $o,K: nat] :
      ( ( finite4290736615968046902t_unit @ S3 )
     => ( ( finite4290736615968046902t_unit @ T4 )
       => ( ! [X5: product_unit] :
              ( ( member_Product_unit @ X5 @ T4 )
             => ( ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [I2: product_unit] :
                        ( ( member_Product_unit @ I2 @ S3 )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = K ) )
         => ( ( groups8766797177574957219it_nat
              @ ^ [I2: product_unit] :
                  ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [J3: product_unit] :
                        ( ( member_Product_unit @ J3 @ T4 )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S3 )
            = ( times_times_nat @ K @ ( finite410649719033368117t_unit @ T4 ) ) ) ) ) ) ).

% sum_multicount
thf(fact_7188_sum__multicount,axiom,
    ! [S3: set_Product_unit,T4: set_nat,R5: product_unit > nat > $o,K: nat] :
      ( ( finite4290736615968046902t_unit @ S3 )
     => ( ( finite_finite_nat @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T4 )
             => ( ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [I2: product_unit] :
                        ( ( member_Product_unit @ I2 @ S3 )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = K ) )
         => ( ( groups8766797177574957219it_nat
              @ ^ [I2: product_unit] :
                  ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [J3: nat] :
                        ( ( member_nat @ J3 @ T4 )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S3 )
            = ( times_times_nat @ K @ ( finite_card_nat @ T4 ) ) ) ) ) ) ).

% sum_multicount
thf(fact_7189_sum__multicount,axiom,
    ! [S3: set_Product_unit,T4: set_int,R5: product_unit > int > $o,K: nat] :
      ( ( finite4290736615968046902t_unit @ S3 )
     => ( ( finite_finite_int @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T4 )
             => ( ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [I2: product_unit] :
                        ( ( member_Product_unit @ I2 @ S3 )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = K ) )
         => ( ( groups8766797177574957219it_nat
              @ ^ [I2: product_unit] :
                  ( finite_card_int
                  @ ( collect_int
                    @ ^ [J3: int] :
                        ( ( member_int @ J3 @ T4 )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S3 )
            = ( times_times_nat @ K @ ( finite_card_int @ T4 ) ) ) ) ) ) ).

% sum_multicount
thf(fact_7190_sum__multicount,axiom,
    ! [S3: set_int,T4: set_Product_unit,R5: int > product_unit > $o,K: nat] :
      ( ( finite_finite_int @ S3 )
     => ( ( finite4290736615968046902t_unit @ T4 )
       => ( ! [X5: product_unit] :
              ( ( member_Product_unit @ X5 @ T4 )
             => ( ( finite_card_int
                  @ ( collect_int
                    @ ^ [I2: int] :
                        ( ( member_int @ I2 @ S3 )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = K ) )
         => ( ( groups4541462559716669496nt_nat
              @ ^ [I2: int] :
                  ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [J3: product_unit] :
                        ( ( member_Product_unit @ J3 @ T4 )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S3 )
            = ( times_times_nat @ K @ ( finite410649719033368117t_unit @ T4 ) ) ) ) ) ) ).

% sum_multicount
thf(fact_7191_sum__multicount,axiom,
    ! [S3: set_int,T4: set_nat,R5: int > nat > $o,K: nat] :
      ( ( finite_finite_int @ S3 )
     => ( ( finite_finite_nat @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T4 )
             => ( ( finite_card_int
                  @ ( collect_int
                    @ ^ [I2: int] :
                        ( ( member_int @ I2 @ S3 )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = K ) )
         => ( ( groups4541462559716669496nt_nat
              @ ^ [I2: int] :
                  ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [J3: nat] :
                        ( ( member_nat @ J3 @ T4 )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S3 )
            = ( times_times_nat @ K @ ( finite_card_nat @ T4 ) ) ) ) ) ) ).

% sum_multicount
thf(fact_7192_sum__multicount,axiom,
    ! [S3: set_int,T4: set_int,R5: int > int > $o,K: nat] :
      ( ( finite_finite_int @ S3 )
     => ( ( finite_finite_int @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T4 )
             => ( ( finite_card_int
                  @ ( collect_int
                    @ ^ [I2: int] :
                        ( ( member_int @ I2 @ S3 )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = K ) )
         => ( ( groups4541462559716669496nt_nat
              @ ^ [I2: int] :
                  ( finite_card_int
                  @ ( collect_int
                    @ ^ [J3: int] :
                        ( ( member_int @ J3 @ T4 )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S3 )
            = ( times_times_nat @ K @ ( finite_card_int @ T4 ) ) ) ) ) ) ).

% sum_multicount
thf(fact_7193_sum__multicount,axiom,
    ! [S3: set_nat,T4: set_Product_unit,R5: nat > product_unit > $o,K: nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( finite4290736615968046902t_unit @ T4 )
       => ( ! [X5: product_unit] :
              ( ( member_Product_unit @ X5 @ T4 )
             => ( ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [I2: nat] :
                        ( ( member_nat @ I2 @ S3 )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = K ) )
         => ( ( groups3542108847815614940at_nat
              @ ^ [I2: nat] :
                  ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [J3: product_unit] :
                        ( ( member_Product_unit @ J3 @ T4 )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S3 )
            = ( times_times_nat @ K @ ( finite410649719033368117t_unit @ T4 ) ) ) ) ) ) ).

% sum_multicount
thf(fact_7194_sum__multicount,axiom,
    ! [S3: set_nat,T4: set_nat,R5: nat > nat > $o,K: nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( finite_finite_nat @ T4 )
       => ( ! [X5: nat] :
              ( ( member_nat @ X5 @ T4 )
             => ( ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [I2: nat] :
                        ( ( member_nat @ I2 @ S3 )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = K ) )
         => ( ( groups3542108847815614940at_nat
              @ ^ [I2: nat] :
                  ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [J3: nat] :
                        ( ( member_nat @ J3 @ T4 )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S3 )
            = ( times_times_nat @ K @ ( finite_card_nat @ T4 ) ) ) ) ) ) ).

% sum_multicount
thf(fact_7195_sum__multicount,axiom,
    ! [S3: set_nat,T4: set_int,R5: nat > int > $o,K: nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( finite_finite_int @ T4 )
       => ( ! [X5: int] :
              ( ( member_int @ X5 @ T4 )
             => ( ( finite_card_nat
                  @ ( collect_nat
                    @ ^ [I2: nat] :
                        ( ( member_nat @ I2 @ S3 )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = K ) )
         => ( ( groups3542108847815614940at_nat
              @ ^ [I2: nat] :
                  ( finite_card_int
                  @ ( collect_int
                    @ ^ [J3: int] :
                        ( ( member_int @ J3 @ T4 )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S3 )
            = ( times_times_nat @ K @ ( finite_card_int @ T4 ) ) ) ) ) ) ).

% sum_multicount
thf(fact_7196_sum__multicount,axiom,
    ! [S3: set_Product_unit,T4: set_set_nat,R5: product_unit > set_nat > $o,K: nat] :
      ( ( finite4290736615968046902t_unit @ S3 )
     => ( ( finite1152437895449049373et_nat @ T4 )
       => ( ! [X5: set_nat] :
              ( ( member_set_nat @ X5 @ T4 )
             => ( ( finite410649719033368117t_unit
                  @ ( collect_Product_unit
                    @ ^ [I2: product_unit] :
                        ( ( member_Product_unit @ I2 @ S3 )
                        & ( R5 @ I2 @ X5 ) ) ) )
                = K ) )
         => ( ( groups8766797177574957219it_nat
              @ ^ [I2: product_unit] :
                  ( finite_card_set_nat
                  @ ( collect_set_nat
                    @ ^ [J3: set_nat] :
                        ( ( member_set_nat @ J3 @ T4 )
                        & ( R5 @ I2 @ J3 ) ) ) )
              @ S3 )
            = ( times_times_nat @ K @ ( finite_card_set_nat @ T4 ) ) ) ) ) ) ).

% sum_multicount
thf(fact_7197_div__push__bit__of__1__eq__drop__bit,axiom,
    ! [A: int,N: nat] :
      ( ( divide_divide_int @ A @ ( bit_se545348938243370406it_int @ N @ one_one_int ) )
      = ( bit_se8568078237143864401it_int @ N @ A ) ) ).

% div_push_bit_of_1_eq_drop_bit
thf(fact_7198_div__push__bit__of__1__eq__drop__bit,axiom,
    ! [A: code_integer,N: nat] :
      ( ( divide6298287555418463151nteger @ A @ ( bit_se7788150548672797655nteger @ N @ one_one_Code_integer ) )
      = ( bit_se3928097537394005634nteger @ N @ A ) ) ).

% div_push_bit_of_1_eq_drop_bit
thf(fact_7199_div__push__bit__of__1__eq__drop__bit,axiom,
    ! [A: code_natural,N: nat] :
      ( ( divide5121882707175180666atural @ A @ ( bit_se6611745700429515170atural @ N @ one_one_Code_natural ) )
      = ( bit_se2751692689150723149atural @ N @ A ) ) ).

% div_push_bit_of_1_eq_drop_bit
thf(fact_7200_div__push__bit__of__1__eq__drop__bit,axiom,
    ! [A: nat,N: nat] :
      ( ( divide_divide_nat @ A @ ( bit_se547839408752420682it_nat @ N @ one_one_nat ) )
      = ( bit_se8570568707652914677it_nat @ N @ A ) ) ).

% div_push_bit_of_1_eq_drop_bit
thf(fact_7201_bits__ident,axiom,
    ! [N: nat,A: nat] :
      ( ( plus_plus_nat @ ( bit_se547839408752420682it_nat @ N @ ( bit_se8570568707652914677it_nat @ N @ A ) ) @ ( bit_se2925701944663578781it_nat @ N @ A ) )
      = A ) ).

% bits_ident
thf(fact_7202_bits__ident,axiom,
    ! [N: nat,A: int] :
      ( ( plus_plus_int @ ( bit_se545348938243370406it_int @ N @ ( bit_se8568078237143864401it_int @ N @ A ) ) @ ( bit_se2923211474154528505it_int @ N @ A ) )
      = A ) ).

% bits_ident
thf(fact_7203_subset__card__intvl__is__intvl,axiom,
    ! [A3: set_nat,K: nat] :
      ( ( ord_less_eq_set_nat @ A3 @ ( set_or4665077453230672383an_nat @ K @ ( plus_plus_nat @ K @ ( finite_card_nat @ A3 ) ) ) )
     => ( A3
        = ( set_or4665077453230672383an_nat @ K @ ( plus_plus_nat @ K @ ( finite_card_nat @ A3 ) ) ) ) ) ).

% subset_card_intvl_is_intvl
thf(fact_7204_set__encode__inf,axiom,
    ! [A3: set_nat] :
      ( ~ ( finite_finite_nat @ A3 )
     => ( ( nat_set_encode @ A3 )
        = zero_zero_nat ) ) ).

% set_encode_inf
thf(fact_7205_card__le__Suc0__iff__eq,axiom,
    ! [A3: set_Product_unit] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( ord_less_eq_nat @ ( finite410649719033368117t_unit @ A3 ) @ ( suc @ zero_zero_nat ) )
        = ( ! [X4: product_unit] :
              ( ( member_Product_unit @ X4 @ A3 )
             => ! [Y: product_unit] :
                  ( ( member_Product_unit @ Y @ A3 )
                 => ( X4 = Y ) ) ) ) ) ) ).

% card_le_Suc0_iff_eq
thf(fact_7206_card__le__Suc0__iff__eq,axiom,
    ! [A3: set_set_nat] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( ord_less_eq_nat @ ( finite_card_set_nat @ A3 ) @ ( suc @ zero_zero_nat ) )
        = ( ! [X4: set_nat] :
              ( ( member_set_nat @ X4 @ A3 )
             => ! [Y: set_nat] :
                  ( ( member_set_nat @ Y @ A3 )
                 => ( X4 = Y ) ) ) ) ) ) ).

% card_le_Suc0_iff_eq
thf(fact_7207_card__le__Suc0__iff__eq,axiom,
    ! [A3: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ A3 )
     => ( ( ord_less_eq_nat @ ( finite_card_list_nat @ A3 ) @ ( suc @ zero_zero_nat ) )
        = ( ! [X4: list_nat] :
              ( ( member_list_nat @ X4 @ A3 )
             => ! [Y: list_nat] :
                  ( ( member_list_nat @ Y @ A3 )
                 => ( X4 = Y ) ) ) ) ) ) ).

% card_le_Suc0_iff_eq
thf(fact_7208_card__le__Suc0__iff__eq,axiom,
    ! [A3: set_nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ord_less_eq_nat @ ( finite_card_nat @ A3 ) @ ( suc @ zero_zero_nat ) )
        = ( ! [X4: nat] :
              ( ( member_nat @ X4 @ A3 )
             => ! [Y: nat] :
                  ( ( member_nat @ Y @ A3 )
                 => ( X4 = Y ) ) ) ) ) ) ).

% card_le_Suc0_iff_eq
thf(fact_7209_card__le__Suc0__iff__eq,axiom,
    ! [A3: set_int] :
      ( ( finite_finite_int @ A3 )
     => ( ( ord_less_eq_nat @ ( finite_card_int @ A3 ) @ ( suc @ zero_zero_nat ) )
        = ( ! [X4: int] :
              ( ( member_int @ X4 @ A3 )
             => ! [Y: int] :
                  ( ( member_int @ Y @ A3 )
                 => ( X4 = Y ) ) ) ) ) ) ).

% card_le_Suc0_iff_eq
thf(fact_7210_card__le__Suc0__iff__eq,axiom,
    ! [A3: set_Pr1261947904930325089at_nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( ( ord_less_eq_nat @ ( finite711546835091564841at_nat @ A3 ) @ ( suc @ zero_zero_nat ) )
        = ( ! [X4: product_prod_nat_nat] :
              ( ( member8440522571783428010at_nat @ X4 @ A3 )
             => ! [Y: product_prod_nat_nat] :
                  ( ( member8440522571783428010at_nat @ Y @ A3 )
                 => ( X4 = Y ) ) ) ) ) ) ).

% card_le_Suc0_iff_eq
thf(fact_7211_subset__eq__atLeast0__lessThan__card,axiom,
    ! [N6: set_nat,N: nat] :
      ( ( ord_less_eq_set_nat @ N6 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
     => ( ord_less_eq_nat @ ( finite_card_nat @ N6 ) @ N ) ) ).

% subset_eq_atLeast0_lessThan_card
thf(fact_7212_card__sum__le__nat__sum,axiom,
    ! [S3: set_nat] :
      ( ord_less_eq_nat
      @ ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : X4
        @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( finite_card_nat @ S3 ) ) )
      @ ( groups3542108847815614940at_nat
        @ ^ [X4: nat] : X4
        @ S3 ) ) ).

% card_sum_le_nat_sum
thf(fact_7213_prod__le__power,axiom,
    ! [A3: set_int,F: int > code_integer,N: code_integer,K: nat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) )
            & ( ord_le3102999989581377725nteger @ ( F @ I3 ) @ N ) ) )
     => ( ( ord_less_eq_nat @ ( finite_card_int @ A3 ) @ K )
       => ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ N )
         => ( ord_le3102999989581377725nteger @ ( groups3827104343326376752nteger @ F @ A3 ) @ ( power_8256067586552552935nteger @ N @ K ) ) ) ) ) ).

% prod_le_power
thf(fact_7214_prod__le__power,axiom,
    ! [A3: set_nat,F: nat > code_integer,N: code_integer,K: nat] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) )
            & ( ord_le3102999989581377725nteger @ ( F @ I3 ) @ N ) ) )
     => ( ( ord_less_eq_nat @ ( finite_card_nat @ A3 ) @ K )
       => ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ N )
         => ( ord_le3102999989581377725nteger @ ( groups3455450783089532116nteger @ F @ A3 ) @ ( power_8256067586552552935nteger @ N @ K ) ) ) ) ) ).

% prod_le_power
thf(fact_7215_prod__le__power,axiom,
    ! [A3: set_Product_unit,F: product_unit > code_integer,N: code_integer,K: nat] :
      ( ! [I3: product_unit] :
          ( ( member_Product_unit @ I3 @ A3 )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( F @ I3 ) )
            & ( ord_le3102999989581377725nteger @ ( F @ I3 ) @ N ) ) )
     => ( ( ord_less_eq_nat @ ( finite410649719033368117t_unit @ A3 ) @ K )
       => ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ N )
         => ( ord_le3102999989581377725nteger @ ( groups8185359811944078981nteger @ F @ A3 ) @ ( power_8256067586552552935nteger @ N @ K ) ) ) ) ) ).

% prod_le_power
thf(fact_7216_prod__le__power,axiom,
    ! [A3: set_int,F: int > code_natural,N: code_natural,K: nat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) )
            & ( ord_le1926595141338095240atural @ ( F @ I3 ) @ N ) ) )
     => ( ( ord_less_eq_nat @ ( finite_card_int @ A3 ) @ K )
       => ( ( ord_le1926595141338095240atural @ one_one_Code_natural @ N )
         => ( ord_le1926595141338095240atural @ ( groups2650699495083094267atural @ F @ A3 ) @ ( power_7079662738309270450atural @ N @ K ) ) ) ) ) ).

% prod_le_power
thf(fact_7217_prod__le__power,axiom,
    ! [A3: set_nat,F: nat > code_natural,N: code_natural,K: nat] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) )
            & ( ord_le1926595141338095240atural @ ( F @ I3 ) @ N ) ) )
     => ( ( ord_less_eq_nat @ ( finite_card_nat @ A3 ) @ K )
       => ( ( ord_le1926595141338095240atural @ one_one_Code_natural @ N )
         => ( ord_le1926595141338095240atural @ ( groups2279045934846249631atural @ F @ A3 ) @ ( power_7079662738309270450atural @ N @ K ) ) ) ) ) ).

% prod_le_power
thf(fact_7218_prod__le__power,axiom,
    ! [A3: set_Product_unit,F: product_unit > code_natural,N: code_natural,K: nat] :
      ( ! [I3: product_unit] :
          ( ( member_Product_unit @ I3 @ A3 )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( F @ I3 ) )
            & ( ord_le1926595141338095240atural @ ( F @ I3 ) @ N ) ) )
     => ( ( ord_less_eq_nat @ ( finite410649719033368117t_unit @ A3 ) @ K )
       => ( ( ord_le1926595141338095240atural @ one_one_Code_natural @ N )
         => ( ord_le1926595141338095240atural @ ( groups7008954963700796496atural @ F @ A3 ) @ ( power_7079662738309270450atural @ N @ K ) ) ) ) ) ).

% prod_le_power
thf(fact_7219_prod__le__power,axiom,
    ! [A3: set_int,F: int > rat,N: rat,K: nat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) )
            & ( ord_less_eq_rat @ ( F @ I3 ) @ N ) ) )
     => ( ( ord_less_eq_nat @ ( finite_card_int @ A3 ) @ K )
       => ( ( ord_less_eq_rat @ one_one_rat @ N )
         => ( ord_less_eq_rat @ ( groups1072433553688619179nt_rat @ F @ A3 ) @ ( power_power_rat @ N @ K ) ) ) ) ) ).

% prod_le_power
thf(fact_7220_prod__le__power,axiom,
    ! [A3: set_nat,F: nat > rat,N: rat,K: nat] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) )
            & ( ord_less_eq_rat @ ( F @ I3 ) @ N ) ) )
     => ( ( ord_less_eq_nat @ ( finite_card_nat @ A3 ) @ K )
       => ( ( ord_less_eq_rat @ one_one_rat @ N )
         => ( ord_less_eq_rat @ ( groups73079841787564623at_rat @ F @ A3 ) @ ( power_power_rat @ N @ K ) ) ) ) ) ).

% prod_le_power
thf(fact_7221_prod__le__power,axiom,
    ! [A3: set_Product_unit,F: product_unit > rat,N: rat,K: nat] :
      ( ! [I3: product_unit] :
          ( ( member_Product_unit @ I3 @ A3 )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ ( F @ I3 ) )
            & ( ord_less_eq_rat @ ( F @ I3 ) @ N ) ) )
     => ( ( ord_less_eq_nat @ ( finite410649719033368117t_unit @ A3 ) @ K )
       => ( ( ord_less_eq_rat @ one_one_rat @ N )
         => ( ord_less_eq_rat @ ( groups8984663225794451456it_rat @ F @ A3 ) @ ( power_power_rat @ N @ K ) ) ) ) ) ).

% prod_le_power
thf(fact_7222_prod__le__power,axiom,
    ! [A3: set_int,F: int > nat,N: nat,K: nat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ ( F @ I3 ) )
            & ( ord_less_eq_nat @ ( F @ I3 ) @ N ) ) )
     => ( ( ord_less_eq_nat @ ( finite_card_int @ A3 ) @ K )
       => ( ( ord_less_eq_nat @ one_one_nat @ N )
         => ( ord_less_eq_nat @ ( groups1707563613775114915nt_nat @ F @ A3 ) @ ( power_power_nat @ N @ K ) ) ) ) ) ).

% prod_le_power
thf(fact_7223_sum__bounded__above__strict,axiom,
    ! [A3: set_int,F: int > code_integer,K5: code_integer] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ord_le6747313008572928689nteger @ ( F @ I3 ) @ K5 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_int @ A3 ) )
       => ( ord_le6747313008572928689nteger @ ( groups7873554091576472773nteger @ F @ A3 ) @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ ( finite_card_int @ A3 ) ) @ K5 ) ) ) ) ).

% sum_bounded_above_strict
thf(fact_7224_sum__bounded__above__strict,axiom,
    ! [A3: set_nat,F: nat > code_integer,K5: code_integer] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ord_le6747313008572928689nteger @ ( F @ I3 ) @ K5 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_nat @ A3 ) )
       => ( ord_le6747313008572928689nteger @ ( groups7501900531339628137nteger @ F @ A3 ) @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ ( finite_card_nat @ A3 ) ) @ K5 ) ) ) ) ).

% sum_bounded_above_strict
thf(fact_7225_sum__bounded__above__strict,axiom,
    ! [A3: set_Product_unit,F: product_unit > code_integer,K5: code_integer] :
      ( ! [I3: product_unit] :
          ( ( member_Product_unit @ I3 @ A3 )
         => ( ord_le6747313008572928689nteger @ ( F @ I3 ) @ K5 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite410649719033368117t_unit @ A3 ) )
       => ( ord_le6747313008572928689nteger @ ( groups5393439102872367408nteger @ F @ A3 ) @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ ( finite410649719033368117t_unit @ A3 ) ) @ K5 ) ) ) ) ).

% sum_bounded_above_strict
thf(fact_7226_sum__bounded__above__strict,axiom,
    ! [A3: set_int,F: int > rat,K5: rat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ord_less_rat @ ( F @ I3 ) @ K5 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_int @ A3 ) )
       => ( ord_less_rat @ ( groups3906332499630173760nt_rat @ F @ A3 ) @ ( times_times_rat @ ( semiri681578069525770553at_rat @ ( finite_card_int @ A3 ) ) @ K5 ) ) ) ) ).

% sum_bounded_above_strict
thf(fact_7227_sum__bounded__above__strict,axiom,
    ! [A3: set_nat,F: nat > rat,K5: rat] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ord_less_rat @ ( F @ I3 ) @ K5 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_nat @ A3 ) )
       => ( ord_less_rat @ ( groups2906978787729119204at_rat @ F @ A3 ) @ ( times_times_rat @ ( semiri681578069525770553at_rat @ ( finite_card_nat @ A3 ) ) @ K5 ) ) ) ) ).

% sum_bounded_above_strict
thf(fact_7228_sum__bounded__above__strict,axiom,
    ! [A3: set_Product_unit,F: product_unit > rat,K5: rat] :
      ( ! [I3: product_unit] :
          ( ( member_Product_unit @ I3 @ A3 )
         => ( ord_less_rat @ ( F @ I3 ) @ K5 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite410649719033368117t_unit @ A3 ) )
       => ( ord_less_rat @ ( groups8131667117488461483it_rat @ F @ A3 ) @ ( times_times_rat @ ( semiri681578069525770553at_rat @ ( finite410649719033368117t_unit @ A3 ) ) @ K5 ) ) ) ) ).

% sum_bounded_above_strict
thf(fact_7229_sum__bounded__above__strict,axiom,
    ! [A3: set_nat,F: nat > int,K5: int] :
      ( ! [I3: nat] :
          ( ( member_nat @ I3 @ A3 )
         => ( ord_less_int @ ( F @ I3 ) @ K5 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_nat @ A3 ) )
       => ( ord_less_int @ ( groups3539618377306564664at_int @ F @ A3 ) @ ( times_times_int @ ( semiri1314217659103216013at_int @ ( finite_card_nat @ A3 ) ) @ K5 ) ) ) ) ).

% sum_bounded_above_strict
thf(fact_7230_sum__bounded__above__strict,axiom,
    ! [A3: set_Product_unit,F: product_unit > int,K5: int] :
      ( ! [I3: product_unit] :
          ( ( member_Product_unit @ I3 @ A3 )
         => ( ord_less_int @ ( F @ I3 ) @ K5 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite410649719033368117t_unit @ A3 ) )
       => ( ord_less_int @ ( groups8764306707065906943it_int @ F @ A3 ) @ ( times_times_int @ ( semiri1314217659103216013at_int @ ( finite410649719033368117t_unit @ A3 ) ) @ K5 ) ) ) ) ).

% sum_bounded_above_strict
thf(fact_7231_sum__bounded__above__strict,axiom,
    ! [A3: set_int,F: int > nat,K5: nat] :
      ( ! [I3: int] :
          ( ( member_int @ I3 @ A3 )
         => ( ord_less_nat @ ( F @ I3 ) @ K5 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_int @ A3 ) )
       => ( ord_less_nat @ ( groups4541462559716669496nt_nat @ F @ A3 ) @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ ( finite_card_int @ A3 ) ) @ K5 ) ) ) ) ).

% sum_bounded_above_strict
thf(fact_7232_sum__bounded__above__strict,axiom,
    ! [A3: set_Product_unit,F: product_unit > nat,K5: nat] :
      ( ! [I3: product_unit] :
          ( ( member_Product_unit @ I3 @ A3 )
         => ( ord_less_nat @ ( F @ I3 ) @ K5 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite410649719033368117t_unit @ A3 ) )
       => ( ord_less_nat @ ( groups8766797177574957219it_nat @ F @ A3 ) @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ ( finite410649719033368117t_unit @ A3 ) ) @ K5 ) ) ) ) ).

% sum_bounded_above_strict
thf(fact_7233_prod__gen__delta,axiom,
    ! [S3: set_Product_unit,A: product_unit,B: product_unit > nat,C: nat] :
      ( ( finite4290736615968046902t_unit @ S3 )
     => ( ( ( member_Product_unit @ A @ S3 )
         => ( ( groups396421249026171384it_nat
              @ ^ [K3: product_unit] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( times_times_nat @ ( B @ A ) @ ( power_power_nat @ C @ ( minus_minus_nat @ ( finite410649719033368117t_unit @ S3 ) @ one_one_nat ) ) ) ) )
        & ( ~ ( member_Product_unit @ A @ S3 )
         => ( ( groups396421249026171384it_nat
              @ ^ [K3: product_unit] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( power_power_nat @ C @ ( finite410649719033368117t_unit @ S3 ) ) ) ) ) ) ).

% prod_gen_delta
thf(fact_7234_prod__gen__delta,axiom,
    ! [S3: set_int,A: int,B: int > nat,C: nat] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups1707563613775114915nt_nat
              @ ^ [K3: int] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( times_times_nat @ ( B @ A ) @ ( power_power_nat @ C @ ( minus_minus_nat @ ( finite_card_int @ S3 ) @ one_one_nat ) ) ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups1707563613775114915nt_nat
              @ ^ [K3: int] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( power_power_nat @ C @ ( finite_card_int @ S3 ) ) ) ) ) ) ).

% prod_gen_delta
thf(fact_7235_prod__gen__delta,axiom,
    ! [S3: set_Product_unit,A: product_unit,B: product_unit > int,C: int] :
      ( ( finite4290736615968046902t_unit @ S3 )
     => ( ( ( member_Product_unit @ A @ S3 )
         => ( ( groups393930778517121108it_int
              @ ^ [K3: product_unit] : ( if_int @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( times_times_int @ ( B @ A ) @ ( power_power_int @ C @ ( minus_minus_nat @ ( finite410649719033368117t_unit @ S3 ) @ one_one_nat ) ) ) ) )
        & ( ~ ( member_Product_unit @ A @ S3 )
         => ( ( groups393930778517121108it_int
              @ ^ [K3: product_unit] : ( if_int @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( power_power_int @ C @ ( finite410649719033368117t_unit @ S3 ) ) ) ) ) ) ).

% prod_gen_delta
thf(fact_7236_prod__gen__delta,axiom,
    ! [S3: set_Product_unit,A: product_unit,B: product_unit > code_integer,C: code_integer] :
      ( ( finite4290736615968046902t_unit @ S3 )
     => ( ( ( member_Product_unit @ A @ S3 )
         => ( ( groups8185359811944078981nteger
              @ ^ [K3: product_unit] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( times_3573771949741848930nteger @ ( B @ A ) @ ( power_8256067586552552935nteger @ C @ ( minus_minus_nat @ ( finite410649719033368117t_unit @ S3 ) @ one_one_nat ) ) ) ) )
        & ( ~ ( member_Product_unit @ A @ S3 )
         => ( ( groups8185359811944078981nteger
              @ ^ [K3: product_unit] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( power_8256067586552552935nteger @ C @ ( finite410649719033368117t_unit @ S3 ) ) ) ) ) ) ).

% prod_gen_delta
thf(fact_7237_prod__gen__delta,axiom,
    ! [S3: set_nat,A: nat,B: nat > code_integer,C: code_integer] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups3455450783089532116nteger
              @ ^ [K3: nat] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( times_3573771949741848930nteger @ ( B @ A ) @ ( power_8256067586552552935nteger @ C @ ( minus_minus_nat @ ( finite_card_nat @ S3 ) @ one_one_nat ) ) ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups3455450783089532116nteger
              @ ^ [K3: nat] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( power_8256067586552552935nteger @ C @ ( finite_card_nat @ S3 ) ) ) ) ) ) ).

% prod_gen_delta
thf(fact_7238_prod__gen__delta,axiom,
    ! [S3: set_int,A: int,B: int > code_integer,C: code_integer] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups3827104343326376752nteger
              @ ^ [K3: int] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( times_3573771949741848930nteger @ ( B @ A ) @ ( power_8256067586552552935nteger @ C @ ( minus_minus_nat @ ( finite_card_int @ S3 ) @ one_one_nat ) ) ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups3827104343326376752nteger
              @ ^ [K3: int] : ( if_Code_integer @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( power_8256067586552552935nteger @ C @ ( finite_card_int @ S3 ) ) ) ) ) ) ).

% prod_gen_delta
thf(fact_7239_prod__gen__delta,axiom,
    ! [S3: set_Product_unit,A: product_unit,B: product_unit > rat,C: rat] :
      ( ( finite4290736615968046902t_unit @ S3 )
     => ( ( ( member_Product_unit @ A @ S3 )
         => ( ( groups8984663225794451456it_rat
              @ ^ [K3: product_unit] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( times_times_rat @ ( B @ A ) @ ( power_power_rat @ C @ ( minus_minus_nat @ ( finite410649719033368117t_unit @ S3 ) @ one_one_nat ) ) ) ) )
        & ( ~ ( member_Product_unit @ A @ S3 )
         => ( ( groups8984663225794451456it_rat
              @ ^ [K3: product_unit] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( power_power_rat @ C @ ( finite410649719033368117t_unit @ S3 ) ) ) ) ) ) ).

% prod_gen_delta
thf(fact_7240_prod__gen__delta,axiom,
    ! [S3: set_nat,A: nat,B: nat > rat,C: rat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups73079841787564623at_rat
              @ ^ [K3: nat] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( times_times_rat @ ( B @ A ) @ ( power_power_rat @ C @ ( minus_minus_nat @ ( finite_card_nat @ S3 ) @ one_one_nat ) ) ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups73079841787564623at_rat
              @ ^ [K3: nat] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( power_power_rat @ C @ ( finite_card_nat @ S3 ) ) ) ) ) ) ).

% prod_gen_delta
thf(fact_7241_prod__gen__delta,axiom,
    ! [S3: set_int,A: int,B: int > rat,C: rat] :
      ( ( finite_finite_int @ S3 )
     => ( ( ( member_int @ A @ S3 )
         => ( ( groups1072433553688619179nt_rat
              @ ^ [K3: int] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( times_times_rat @ ( B @ A ) @ ( power_power_rat @ C @ ( minus_minus_nat @ ( finite_card_int @ S3 ) @ one_one_nat ) ) ) ) )
        & ( ~ ( member_int @ A @ S3 )
         => ( ( groups1072433553688619179nt_rat
              @ ^ [K3: int] : ( if_rat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( power_power_rat @ C @ ( finite_card_int @ S3 ) ) ) ) ) ) ).

% prod_gen_delta
thf(fact_7242_prod__gen__delta,axiom,
    ! [S3: set_nat,A: nat,B: nat > nat,C: nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ( member_nat @ A @ S3 )
         => ( ( groups708209901874060359at_nat
              @ ^ [K3: nat] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( times_times_nat @ ( B @ A ) @ ( power_power_nat @ C @ ( minus_minus_nat @ ( finite_card_nat @ S3 ) @ one_one_nat ) ) ) ) )
        & ( ~ ( member_nat @ A @ S3 )
         => ( ( groups708209901874060359at_nat
              @ ^ [K3: nat] : ( if_nat @ ( K3 = A ) @ ( B @ K3 ) @ C )
              @ S3 )
            = ( power_power_nat @ C @ ( finite_card_nat @ S3 ) ) ) ) ) ) ).

% prod_gen_delta
thf(fact_7243_set__encode__insert,axiom,
    ! [A3: set_nat,N: nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ~ ( member_nat @ N @ A3 )
       => ( ( nat_set_encode @ ( insert_nat @ N @ A3 ) )
          = ( plus_plus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ ( nat_set_encode @ A3 ) ) ) ) ) ).

% set_encode_insert
thf(fact_7244_card__lists__length__le,axiom,
    ! [A3: set_Product_unit,N: nat] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( finite3744894192721311803t_unit
          @ ( collec4736972532740828926t_unit
            @ ^ [Xs: list_Product_unit] :
                ( ( ord_le3507040750410214029t_unit @ ( set_Product_unit2 @ Xs ) @ A3 )
                & ( ord_less_eq_nat @ ( size_s245203480648594047t_unit @ Xs ) @ N ) ) ) )
        = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( finite410649719033368117t_unit @ A3 ) ) @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% card_lists_length_le
thf(fact_7245_card__lists__length__le,axiom,
    ! [A3: set_set_nat,N: nat] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite5631907774883551598et_nat
          @ ( collect_list_set_nat
            @ ^ [Xs: list_set_nat] :
                ( ( ord_le6893508408891458716et_nat @ ( set_set_nat2 @ Xs ) @ A3 )
                & ( ord_less_eq_nat @ ( size_s3254054031482475050et_nat @ Xs ) @ N ) ) ) )
        = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( finite_card_set_nat @ A3 ) ) @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% card_lists_length_le
thf(fact_7246_card__lists__length__le,axiom,
    ! [A3: set_list_nat,N: nat] :
      ( ( finite8100373058378681591st_nat @ A3 )
     => ( ( finite7325466520557071688st_nat
          @ ( collec5989764272469232197st_nat
            @ ^ [Xs: list_list_nat] :
                ( ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Xs ) @ A3 )
                & ( ord_less_eq_nat @ ( size_s3023201423986296836st_nat @ Xs ) @ N ) ) ) )
        = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( finite_card_list_nat @ A3 ) ) @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% card_lists_length_le
thf(fact_7247_card__lists__length__le,axiom,
    ! [A3: set_int,N: nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( finite_card_list_int
          @ ( collect_list_int
            @ ^ [Xs: list_int] :
                ( ( ord_less_eq_set_int @ ( set_int2 @ Xs ) @ A3 )
                & ( ord_less_eq_nat @ ( size_size_list_int @ Xs ) @ N ) ) ) )
        = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( finite_card_int @ A3 ) ) @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% card_lists_length_le
thf(fact_7248_card__lists__length__le,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,N: nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( ( finite249151656366948015at_nat
          @ ( collec3343600615725829874at_nat
            @ ^ [Xs: list_P6011104703257516679at_nat] :
                ( ( ord_le3146513528884898305at_nat @ ( set_Pr5648618587558075414at_nat @ Xs ) @ A3 )
                & ( ord_less_eq_nat @ ( size_s5460976970255530739at_nat @ Xs ) @ N ) ) ) )
        = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( finite711546835091564841at_nat @ A3 ) ) @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% card_lists_length_le
thf(fact_7249_card__lists__length__le,axiom,
    ! [A3: set_char,N: nat] :
      ( ( finite_finite_char @ A3 )
     => ( ( finite1726956870759998265t_char
          @ ( collect_list_char
            @ ^ [Xs: list_char] :
                ( ( ord_less_eq_set_char @ ( set_char2 @ Xs ) @ A3 )
                & ( ord_less_eq_nat @ ( size_size_list_char @ Xs ) @ N ) ) ) )
        = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( finite_card_char @ A3 ) ) @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% card_lists_length_le
thf(fact_7250_card__lists__length__le,axiom,
    ! [A3: set_nat,N: nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite_card_list_nat
          @ ( collect_list_nat
            @ ^ [Xs: list_nat] :
                ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ A3 )
                & ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N ) ) ) )
        = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( finite_card_nat @ A3 ) ) @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% card_lists_length_le
thf(fact_7251_bit__rec,axiom,
    ( bit_se9216721137139052372nteger
    = ( ^ [A4: code_integer,N5: nat] :
          ( ( ( N5 = zero_zero_nat )
           => ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A4 ) )
          & ( ( N5 != zero_zero_nat )
           => ( bit_se9216721137139052372nteger @ ( divide6298287555418463151nteger @ A4 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( minus_minus_nat @ N5 @ one_one_nat ) ) ) ) ) ) ).

% bit_rec
thf(fact_7252_bit__rec,axiom,
    ( bit_se8040316288895769887atural
    = ( ^ [A4: code_natural,N5: nat] :
          ( ( ( N5 = zero_zero_nat )
           => ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A4 ) )
          & ( ( N5 != zero_zero_nat )
           => ( bit_se8040316288895769887atural @ ( divide5121882707175180666atural @ A4 @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) ) @ ( minus_minus_nat @ N5 @ one_one_nat ) ) ) ) ) ) ).

% bit_rec
thf(fact_7253_bit__rec,axiom,
    ( bit_se1148574629649215175it_nat
    = ( ^ [A4: nat,N5: nat] :
          ( ( ( N5 = zero_zero_nat )
           => ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A4 ) )
          & ( ( N5 != zero_zero_nat )
           => ( bit_se1148574629649215175it_nat @ ( divide_divide_nat @ A4 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( minus_minus_nat @ N5 @ one_one_nat ) ) ) ) ) ) ).

% bit_rec
thf(fact_7254_bit__rec,axiom,
    ( bit_se1146084159140164899it_int
    = ( ^ [A4: int,N5: nat] :
          ( ( ( N5 = zero_zero_nat )
           => ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A4 ) )
          & ( ( N5 != zero_zero_nat )
           => ( bit_se1146084159140164899it_int @ ( divide_divide_int @ A4 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( minus_minus_nat @ N5 @ one_one_nat ) ) ) ) ) ) ).

% bit_rec
thf(fact_7255_bit__sum__mult__2__cases,axiom,
    ! [A: code_integer,B: code_integer,N: nat] :
      ( ! [J2: nat] :
          ~ ( bit_se9216721137139052372nteger @ A @ ( suc @ J2 ) )
     => ( ( bit_se9216721137139052372nteger @ ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) ) @ N )
        = ( ( ( N = zero_zero_nat )
           => ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) )
          & ( ( N != zero_zero_nat )
           => ( bit_se9216721137139052372nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ B ) @ N ) ) ) ) ) ).

% bit_sum_mult_2_cases
thf(fact_7256_bit__sum__mult__2__cases,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ! [J2: nat] :
          ~ ( bit_se1148574629649215175it_nat @ A @ ( suc @ J2 ) )
     => ( ( bit_se1148574629649215175it_nat @ ( plus_plus_nat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) @ N )
        = ( ( ( N = zero_zero_nat )
           => ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) )
          & ( ( N != zero_zero_nat )
           => ( bit_se1148574629649215175it_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) @ N ) ) ) ) ) ).

% bit_sum_mult_2_cases
thf(fact_7257_bit__sum__mult__2__cases,axiom,
    ! [A: int,B: int,N: nat] :
      ( ! [J2: nat] :
          ~ ( bit_se1146084159140164899it_int @ A @ ( suc @ J2 ) )
     => ( ( bit_se1146084159140164899it_int @ ( plus_plus_int @ A @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ N )
        = ( ( ( N = zero_zero_nat )
           => ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
          & ( ( N != zero_zero_nat )
           => ( bit_se1146084159140164899it_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) @ N ) ) ) ) ) ).

% bit_sum_mult_2_cases
thf(fact_7258_max__nat_Osemilattice__neutr__order__axioms,axiom,
    ( semila1623282765462674594er_nat @ ord_max_nat @ zero_zero_nat
    @ ^ [X4: nat,Y: nat] : ( ord_less_eq_nat @ Y @ X4 )
    @ ^ [X4: nat,Y: nat] : ( ord_less_nat @ Y @ X4 ) ) ).

% max_nat.semilattice_neutr_order_axioms
thf(fact_7259_apsnd__apfst,axiom,
    ! [F: int > produc8923325533196201883nteger,G: int > code_integer > option6357759511663192854e_term,X: product_prod_int_int] :
      ( ( produc8491535473303802243e_term @ F @ ( produc8661989277576770216rm_int @ G @ X ) )
      = ( produc6137756002093451184nteger @ ( G @ ( product_fst_int_int @ X ) ) @ ( F @ ( product_snd_int_int @ X ) ) ) ) ).

% apsnd_apfst
thf(fact_7260_apsnd__apfst,axiom,
    ! [F: int > produc7822875418678951345atural,G: int > produc4972180933644002618e_term > option6357759511663192854e_term,X: product_prod_int_int] :
      ( ( produc2114408003348798198e_term @ F @ ( produc8208213926402859781rm_int @ G @ X ) )
      = ( produc3831813291587773865atural @ ( G @ ( product_fst_int_int @ X ) ) @ ( F @ ( product_snd_int_int @ X ) ) ) ) ).

% apsnd_apfst
thf(fact_7261_apsnd__apfst,axiom,
    ! [F: int > produc8923325533196201883nteger,G: int > produc6241069584506657477e_term > option6357759511663192854e_term,X: product_prod_int_int] :
      ( ( produc552091674517523435e_term @ F @ ( produc7344697412356995344rm_int @ G @ X ) )
      = ( produc8603105652947943368nteger @ ( G @ ( product_fst_int_int @ X ) ) @ ( F @ ( product_snd_int_int @ X ) ) ) ) ).

% apsnd_apfst
thf(fact_7262_apsnd__apfst,axiom,
    ! [F: int > product_prod_int_int,G: int > produc8551481072490612790e_term > option6357759511663192854e_term,X: product_prod_int_int] :
      ( ( produc189803804368834042e_term @ F @ ( produc212012705979908097rm_int @ G @ X ) )
      = ( produc5700946648718959541nt_int @ ( G @ ( product_fst_int_int @ X ) ) @ ( F @ ( product_snd_int_int @ X ) ) ) ) ).

% apsnd_apfst
thf(fact_7263_apsnd__apfst,axiom,
    ! [F: int > product_prod_int_int,G: int > int > option6357759511663192854e_term,X: product_prod_int_int] :
      ( ( produc3260485439724623344e_term @ F @ ( produc2895628470685950711rm_int @ G @ X ) )
      = ( produc4305682042979456191nt_int @ ( G @ ( product_fst_int_int @ X ) ) @ ( F @ ( product_snd_int_int @ X ) ) ) ) ).

% apsnd_apfst
thf(fact_7264_apsnd__apfst,axiom,
    ! [F: nat > produc8923325533196201883nteger,G: nat > code_integer > option6357759511663192854e_term,X: product_prod_nat_nat] :
      ( ( produc8084659991328946911e_term @ F @ ( produc7038194637613762032rm_nat @ G @ X ) )
      = ( produc6137756002093451184nteger @ ( G @ ( product_fst_nat_nat @ X ) ) @ ( F @ ( product_snd_nat_nat @ X ) ) ) ) ).

% apsnd_apfst
thf(fact_7265_apsnd__apfst,axiom,
    ! [F: nat > produc7822875418678951345atural,G: nat > produc4972180933644002618e_term > option6357759511663192854e_term,X: product_prod_nat_nat] :
      ( ( produc2246054287441728082e_term @ F @ ( produc1146879943561095245rm_nat @ G @ X ) )
      = ( produc3831813291587773865atural @ ( G @ ( product_fst_nat_nat @ X ) ) @ ( F @ ( product_snd_nat_nat @ X ) ) ) ) ).

% apsnd_apfst
thf(fact_7266_apsnd__apfst,axiom,
    ! [F: nat > produc8923325533196201883nteger,G: nat > produc6241069584506657477e_term > option6357759511663192854e_term,X: product_prod_nat_nat] :
      ( ( produc683737958610453319e_term @ F @ ( produc283363429515230808rm_nat @ G @ X ) )
      = ( produc8603105652947943368nteger @ ( G @ ( product_fst_nat_nat @ X ) ) @ ( F @ ( product_snd_nat_nat @ X ) ) ) ) ).

% apsnd_apfst
thf(fact_7267_apsnd__apfst,axiom,
    ! [F: nat > product_prod_int_int,G: nat > produc8551481072490612790e_term > option6357759511663192854e_term,X: product_prod_nat_nat] :
      ( ( produc1383768086050133334e_term @ F @ ( produc6559004206596904265rm_nat @ G @ X ) )
      = ( produc5700946648718959541nt_int @ ( G @ ( product_fst_nat_nat @ X ) ) @ ( F @ ( product_snd_nat_nat @ X ) ) ) ) ).

% apsnd_apfst
thf(fact_7268_apsnd__apfst,axiom,
    ! [F: nat > product_prod_int_int,G: nat > int > option6357759511663192854e_term,X: product_prod_nat_nat] :
      ( ( produc3337498091716317004e_term @ F @ ( produc2171444127112709695rm_nat @ G @ X ) )
      = ( produc4305682042979456191nt_int @ ( G @ ( product_fst_nat_nat @ X ) ) @ ( F @ ( product_snd_nat_nat @ X ) ) ) ) ).

% apsnd_apfst
thf(fact_7269_apfst__conv,axiom,
    ! [F: ( code_integer > option6357759511663192854e_term ) > code_integer > option6357759511663192854e_term,X: code_integer > option6357759511663192854e_term,Y3: produc8923325533196201883nteger] :
      ( ( produc6157546124166486841nteger @ F @ ( produc6137756002093451184nteger @ X @ Y3 ) )
      = ( produc6137756002093451184nteger @ ( F @ X ) @ Y3 ) ) ).

% apfst_conv
thf(fact_7270_apfst__conv,axiom,
    ! [F: ( code_integer > option6357759511663192854e_term ) > produc6241069584506657477e_term > option6357759511663192854e_term,X: code_integer > option6357759511663192854e_term,Y3: produc8923325533196201883nteger] :
      ( ( produc2291436665917485009nteger @ F @ ( produc6137756002093451184nteger @ X @ Y3 ) )
      = ( produc8603105652947943368nteger @ ( F @ X ) @ Y3 ) ) ).

% apfst_conv
thf(fact_7271_apfst__conv,axiom,
    ! [F: ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc4972180933644002618e_term > option6357759511663192854e_term,X: produc4972180933644002618e_term > option6357759511663192854e_term,Y3: produc7822875418678951345atural] :
      ( ( produc7227253073565913365atural @ F @ ( produc3831813291587773865atural @ X @ Y3 ) )
      = ( produc3831813291587773865atural @ ( F @ X ) @ Y3 ) ) ).

% apfst_conv
thf(fact_7272_apfst__conv,axiom,
    ! [F: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > code_integer > option6357759511663192854e_term,X: produc6241069584506657477e_term > option6357759511663192854e_term,Y3: produc8923325533196201883nteger] :
      ( ( produc1843087649659261265nteger @ F @ ( produc8603105652947943368nteger @ X @ Y3 ) )
      = ( produc6137756002093451184nteger @ ( F @ X ) @ Y3 ) ) ).

% apfst_conv
thf(fact_7273_apfst__conv,axiom,
    ! [F: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc6241069584506657477e_term > option6357759511663192854e_term,X: produc6241069584506657477e_term > option6357759511663192854e_term,Y3: produc8923325533196201883nteger] :
      ( ( produc2515316116081422825nteger @ F @ ( produc8603105652947943368nteger @ X @ Y3 ) )
      = ( produc8603105652947943368nteger @ ( F @ X ) @ Y3 ) ) ).

% apfst_conv
thf(fact_7274_apfst__conv,axiom,
    ! [F: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > produc8551481072490612790e_term > option6357759511663192854e_term,X: produc8551481072490612790e_term > option6357759511663192854e_term,Y3: product_prod_int_int] :
      ( ( produc7277921532047535397nt_int @ F @ ( produc5700946648718959541nt_int @ X @ Y3 ) )
      = ( produc5700946648718959541nt_int @ ( F @ X ) @ Y3 ) ) ).

% apfst_conv
thf(fact_7275_apfst__conv,axiom,
    ! [F: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > int > option6357759511663192854e_term,X: produc8551481072490612790e_term > option6357759511663192854e_term,Y3: product_prod_int_int] :
      ( ( produc6919319362177967663nt_int @ F @ ( produc5700946648718959541nt_int @ X @ Y3 ) )
      = ( produc4305682042979456191nt_int @ ( F @ X ) @ Y3 ) ) ).

% apfst_conv
thf(fact_7276_apfst__conv,axiom,
    ! [F: ( int > option6357759511663192854e_term ) > produc8551481072490612790e_term > option6357759511663192854e_term,X: int > option6357759511663192854e_term,Y3: product_prod_int_int] :
      ( ( produc6067946493426971951nt_int @ F @ ( produc4305682042979456191nt_int @ X @ Y3 ) )
      = ( produc5700946648718959541nt_int @ ( F @ X ) @ Y3 ) ) ).

% apfst_conv
thf(fact_7277_apfst__conv,axiom,
    ! [F: ( int > option6357759511663192854e_term ) > int > option6357759511663192854e_term,X: int > option6357759511663192854e_term,Y3: product_prod_int_int] :
      ( ( produc7131893314732144953nt_int @ F @ ( produc4305682042979456191nt_int @ X @ Y3 ) )
      = ( produc4305682042979456191nt_int @ ( F @ X ) @ Y3 ) ) ).

% apfst_conv
thf(fact_7278_fst__apfst,axiom,
    ! [F: nat > nat,X: product_prod_nat_nat] :
      ( ( product_fst_nat_nat @ ( produc986720760941809198at_nat @ F @ X ) )
      = ( F @ ( product_fst_nat_nat @ X ) ) ) ).

% fst_apfst
thf(fact_7279_fst__apfst,axiom,
    ! [F: int > int,X: product_prod_int_int] :
      ( ( product_fst_int_int @ ( produc2355237562570658114nt_int @ F @ X ) )
      = ( F @ ( product_fst_int_int @ X ) ) ) ).

% fst_apfst
thf(fact_7280_snd__apfst,axiom,
    ! [F: int > int,X: product_prod_int_int] :
      ( ( product_snd_int_int @ ( produc2355237562570658114nt_int @ F @ X ) )
      = ( product_snd_int_int @ X ) ) ).

% snd_apfst
thf(fact_7281_snd__apfst,axiom,
    ! [F: nat > nat,X: product_prod_nat_nat] :
      ( ( product_snd_nat_nat @ ( produc986720760941809198at_nat @ F @ X ) )
      = ( product_snd_nat_nat @ X ) ) ).

% snd_apfst
thf(fact_7282_snd__comp__apfst,axiom,
    ! [F: int > int] :
      ( ( comp_P5356232565778667509nt_int @ product_snd_int_int @ ( produc2355237562570658114nt_int @ F ) )
      = product_snd_int_int ) ).

% snd_comp_apfst
thf(fact_7283_snd__comp__apfst,axiom,
    ! [F: nat > nat] :
      ( ( comp_P1567445206330693457at_nat @ product_snd_nat_nat @ ( produc986720760941809198at_nat @ F ) )
      = product_snd_nat_nat ) ).

% snd_comp_apfst
thf(fact_7284_sum_Oinsert,axiom,
    ! [A3: set_Product_unit,X: product_unit,G: product_unit > rat] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ~ ( member_Product_unit @ X @ A3 )
       => ( ( groups8131667117488461483it_rat @ G @ ( insert_Product_unit @ X @ A3 ) )
          = ( plus_plus_rat @ ( G @ X ) @ ( groups8131667117488461483it_rat @ G @ A3 ) ) ) ) ) ).

% sum.insert
thf(fact_7285_sum_Oinsert,axiom,
    ! [A3: set_nat,X: nat,G: nat > rat] :
      ( ( finite_finite_nat @ A3 )
     => ( ~ ( member_nat @ X @ A3 )
       => ( ( groups2906978787729119204at_rat @ G @ ( insert_nat @ X @ A3 ) )
          = ( plus_plus_rat @ ( G @ X ) @ ( groups2906978787729119204at_rat @ G @ A3 ) ) ) ) ) ).

% sum.insert
thf(fact_7286_sum_Oinsert,axiom,
    ! [A3: set_int,X: int,G: int > rat] :
      ( ( finite_finite_int @ A3 )
     => ( ~ ( member_int @ X @ A3 )
       => ( ( groups3906332499630173760nt_rat @ G @ ( insert_int @ X @ A3 ) )
          = ( plus_plus_rat @ ( G @ X ) @ ( groups3906332499630173760nt_rat @ G @ A3 ) ) ) ) ) ).

% sum.insert
thf(fact_7287_sum_Oinsert,axiom,
    ! [A3: set_Product_unit,X: product_unit,G: product_unit > nat] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ~ ( member_Product_unit @ X @ A3 )
       => ( ( groups8766797177574957219it_nat @ G @ ( insert_Product_unit @ X @ A3 ) )
          = ( plus_plus_nat @ ( G @ X ) @ ( groups8766797177574957219it_nat @ G @ A3 ) ) ) ) ) ).

% sum.insert
thf(fact_7288_sum_Oinsert,axiom,
    ! [A3: set_int,X: int,G: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ~ ( member_int @ X @ A3 )
       => ( ( groups4541462559716669496nt_nat @ G @ ( insert_int @ X @ A3 ) )
          = ( plus_plus_nat @ ( G @ X ) @ ( groups4541462559716669496nt_nat @ G @ A3 ) ) ) ) ) ).

% sum.insert
thf(fact_7289_sum_Oinsert,axiom,
    ! [A3: set_Product_unit,X: product_unit,G: product_unit > int] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ~ ( member_Product_unit @ X @ A3 )
       => ( ( groups8764306707065906943it_int @ G @ ( insert_Product_unit @ X @ A3 ) )
          = ( plus_plus_int @ ( G @ X ) @ ( groups8764306707065906943it_int @ G @ A3 ) ) ) ) ) ).

% sum.insert
thf(fact_7290_sum_Oinsert,axiom,
    ! [A3: set_nat,X: nat,G: nat > int] :
      ( ( finite_finite_nat @ A3 )
     => ( ~ ( member_nat @ X @ A3 )
       => ( ( groups3539618377306564664at_int @ G @ ( insert_nat @ X @ A3 ) )
          = ( plus_plus_int @ ( G @ X ) @ ( groups3539618377306564664at_int @ G @ A3 ) ) ) ) ) ).

% sum.insert
thf(fact_7291_sum_Oinsert,axiom,
    ! [A3: set_nat,X: nat,G: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ~ ( member_nat @ X @ A3 )
       => ( ( groups3542108847815614940at_nat @ G @ ( insert_nat @ X @ A3 ) )
          = ( plus_plus_nat @ ( G @ X ) @ ( groups3542108847815614940at_nat @ G @ A3 ) ) ) ) ) ).

% sum.insert
thf(fact_7292_sum_Oinsert,axiom,
    ! [A3: set_int,X: int,G: int > int] :
      ( ( finite_finite_int @ A3 )
     => ( ~ ( member_int @ X @ A3 )
       => ( ( groups4538972089207619220nt_int @ G @ ( insert_int @ X @ A3 ) )
          = ( plus_plus_int @ ( G @ X ) @ ( groups4538972089207619220nt_int @ G @ A3 ) ) ) ) ) ).

% sum.insert
thf(fact_7293_sum_Oinsert,axiom,
    ! [A3: set_set_nat,X: set_nat,G: set_nat > rat] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ~ ( member_set_nat @ X @ A3 )
       => ( ( groups7659867448343625626at_rat @ G @ ( insert_set_nat @ X @ A3 ) )
          = ( plus_plus_rat @ ( G @ X ) @ ( groups7659867448343625626at_rat @ G @ A3 ) ) ) ) ) ).

% sum.insert
thf(fact_7294_fst__comp__apfst,axiom,
    ! [F: nat > nat] :
      ( ( comp_P1567445206330693457at_nat @ product_fst_nat_nat @ ( produc986720760941809198at_nat @ F ) )
      = ( comp_n2711240574518091068at_nat @ F @ product_fst_nat_nat ) ) ).

% fst_comp_apfst
thf(fact_7295_fst__comp__apfst,axiom,
    ! [F: int > int] :
      ( ( comp_P5356232565778667509nt_int @ product_fst_int_int @ ( produc2355237562570658114nt_int @ F ) )
      = ( comp_i4330622015127193916nt_int @ F @ product_fst_int_int ) ) ).

% fst_comp_apfst
thf(fact_7296_card__Diff__insert,axiom,
    ! [A: product_prod_nat_nat,A3: set_Pr1261947904930325089at_nat,B3: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ A @ A3 )
     => ( ~ ( member8440522571783428010at_nat @ A @ B3 )
       => ( ( finite711546835091564841at_nat @ ( minus_1356011639430497352at_nat @ A3 @ ( insert8211810215607154385at_nat @ A @ B3 ) ) )
          = ( minus_minus_nat @ ( finite711546835091564841at_nat @ ( minus_1356011639430497352at_nat @ A3 @ B3 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_7297_card__Diff__insert,axiom,
    ! [A: produc3843707927480180839at_nat,A3: set_Pr4329608150637261639at_nat,B3: set_Pr4329608150637261639at_nat] :
      ( ( member8757157785044589968at_nat @ A @ A3 )
     => ( ~ ( member8757157785044589968at_nat @ A @ B3 )
       => ( ( finite3771342082235030671at_nat @ ( minus_3314409938677909166at_nat @ A3 @ ( insert9069300056098147895at_nat @ A @ B3 ) ) )
          = ( minus_minus_nat @ ( finite3771342082235030671at_nat @ ( minus_3314409938677909166at_nat @ A3 @ B3 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_7298_card__Diff__insert,axiom,
    ! [A: set_Pr1261947904930325089at_nat,A3: set_se7855581050983116737at_nat,B3: set_se7855581050983116737at_nat] :
      ( ( member2643936169264416010at_nat @ A @ A3 )
     => ( ~ ( member2643936169264416010at_nat @ A @ B3 )
       => ( ( finite4356350796350151305at_nat @ ( minus_4207664762107033000at_nat @ A3 @ ( insert9200635055090092081at_nat @ A @ B3 ) ) )
          = ( minus_minus_nat @ ( finite4356350796350151305at_nat @ ( minus_4207664762107033000at_nat @ A3 @ B3 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_7299_card__Diff__insert,axiom,
    ! [A: set_Pr958786334691620121nt_int,A3: set_se6260736226359567993nt_int,B3: set_se6260736226359567993nt_int] :
      ( ( member2340774599025711042nt_int @ A @ A3 )
     => ( ~ ( member2340774599025711042nt_int @ A @ B3 )
       => ( ( finite4053189226111446337nt_int @ ( minus_2612819937483484256nt_int @ A3 @ ( insert8897473484851387113nt_int @ A @ B3 ) ) )
          = ( minus_minus_nat @ ( finite4053189226111446337nt_int @ ( minus_2612819937483484256nt_int @ A3 @ B3 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_7300_card__Diff__insert,axiom,
    ! [A: int,A3: set_int,B3: set_int] :
      ( ( member_int @ A @ A3 )
     => ( ~ ( member_int @ A @ B3 )
       => ( ( finite_card_int @ ( minus_minus_set_int @ A3 @ ( insert_int @ A @ B3 ) ) )
          = ( minus_minus_nat @ ( finite_card_int @ ( minus_minus_set_int @ A3 @ B3 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_7301_card__Diff__insert,axiom,
    ! [A: product_unit,A3: set_Product_unit,B3: set_Product_unit] :
      ( ( member_Product_unit @ A @ A3 )
     => ( ~ ( member_Product_unit @ A @ B3 )
       => ( ( finite410649719033368117t_unit @ ( minus_6452836326544984404t_unit @ A3 @ ( insert_Product_unit @ A @ B3 ) ) )
          = ( minus_minus_nat @ ( finite410649719033368117t_unit @ ( minus_6452836326544984404t_unit @ A3 @ B3 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_7302_card__Diff__insert,axiom,
    ! [A: set_nat,A3: set_set_nat,B3: set_set_nat] :
      ( ( member_set_nat @ A @ A3 )
     => ( ~ ( member_set_nat @ A @ B3 )
       => ( ( finite_card_set_nat @ ( minus_2163939370556025621et_nat @ A3 @ ( insert_set_nat @ A @ B3 ) ) )
          = ( minus_minus_nat @ ( finite_card_set_nat @ ( minus_2163939370556025621et_nat @ A3 @ B3 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_7303_card__Diff__insert,axiom,
    ! [A: list_nat,A3: set_list_nat,B3: set_list_nat] :
      ( ( member_list_nat @ A @ A3 )
     => ( ~ ( member_list_nat @ A @ B3 )
       => ( ( finite_card_list_nat @ ( minus_7954133019191499631st_nat @ A3 @ ( insert_list_nat @ A @ B3 ) ) )
          = ( minus_minus_nat @ ( finite_card_list_nat @ ( minus_7954133019191499631st_nat @ A3 @ B3 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_7304_card__Diff__insert,axiom,
    ! [A: nat,A3: set_nat,B3: set_nat] :
      ( ( member_nat @ A @ A3 )
     => ( ~ ( member_nat @ A @ B3 )
       => ( ( finite_card_nat @ ( minus_minus_set_nat @ A3 @ ( insert_nat @ A @ B3 ) ) )
          = ( minus_minus_nat @ ( finite_card_nat @ ( minus_minus_set_nat @ A3 @ B3 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_7305_apfst__apsnd,axiom,
    ! [F: int > code_integer > option6357759511663192854e_term,G: int > produc8923325533196201883nteger,X: product_prod_int_int] :
      ( ( produc4559386683668556831nteger @ F @ ( produc2935421404040714269er_int @ G @ X ) )
      = ( produc6137756002093451184nteger @ ( F @ ( product_fst_int_int @ X ) ) @ ( G @ ( product_snd_int_int @ X ) ) ) ) ).

% apfst_apsnd
thf(fact_7306_apfst__apsnd,axiom,
    ! [F: int > produc4972180933644002618e_term > option6357759511663192854e_term,G: int > produc7822875418678951345atural,X: product_prod_int_int] :
      ( ( produc730884686555376024atural @ F @ ( produc1633769443012300339al_int @ G @ X ) )
      = ( produc3831813291587773865atural @ ( F @ ( product_fst_int_int @ X ) ) @ ( G @ ( product_snd_int_int @ X ) ) ) ) ).

% apfst_apsnd
thf(fact_7307_apfst__apsnd,axiom,
    ! [F: int > produc6241069584506657477e_term > option6357759511663192854e_term,G: int > produc8923325533196201883nteger,X: product_prod_int_int] :
      ( ( produc5502177047915545527nteger @ F @ ( produc2935421404040714269er_int @ G @ X ) )
      = ( produc8603105652947943368nteger @ ( F @ ( product_fst_int_int @ X ) ) @ ( G @ ( product_snd_int_int @ X ) ) ) ) ).

% apfst_apsnd
thf(fact_7308_apfst__apsnd,axiom,
    ! [F: int > produc8551481072490612790e_term > option6357759511663192854e_term,G: int > product_prod_int_int,X: product_prod_int_int] :
      ( ( produc9204274687749184420nt_int @ F @ ( produc6100211334659168315nt_int @ G @ X ) )
      = ( produc5700946648718959541nt_int @ ( F @ ( product_fst_int_int @ X ) ) @ ( G @ ( product_snd_int_int @ X ) ) ) ) ).

% apfst_apsnd
thf(fact_7309_apfst__apsnd,axiom,
    ! [F: int > int > option6357759511663192854e_term,G: int > product_prod_int_int,X: product_prod_int_int] :
      ( ( produc7862092043137183022nt_int @ F @ ( produc6100211334659168315nt_int @ G @ X ) )
      = ( produc4305682042979456191nt_int @ ( F @ ( product_fst_int_int @ X ) ) @ ( G @ ( product_snd_int_int @ X ) ) ) ) ).

% apfst_apsnd
thf(fact_7310_apfst__apsnd,axiom,
    ! [F: nat > code_integer > option6357759511663192854e_term,G: nat > produc8923325533196201883nteger,X: product_prod_nat_nat] :
      ( ( produc4152511201693701499nteger @ F @ ( produc2688509591584439069er_nat @ G @ X ) )
      = ( produc6137756002093451184nteger @ ( F @ ( product_fst_nat_nat @ X ) ) @ ( G @ ( product_snd_nat_nat @ X ) ) ) ) ).

% apfst_apsnd
thf(fact_7311_apfst__apsnd,axiom,
    ! [F: nat > produc4972180933644002618e_term > option6357759511663192854e_term,G: nat > produc7822875418678951345atural,X: product_prod_nat_nat] :
      ( ( produc862530970648305908atural @ F @ ( produc1386857630556025139al_nat @ G @ X ) )
      = ( produc3831813291587773865atural @ ( F @ ( product_fst_nat_nat @ X ) ) @ ( G @ ( product_snd_nat_nat @ X ) ) ) ) ).

% apfst_apsnd
thf(fact_7312_apfst__apsnd,axiom,
    ! [F: nat > produc6241069584506657477e_term > option6357759511663192854e_term,G: nat > produc8923325533196201883nteger,X: product_prod_nat_nat] :
      ( ( produc5633823332008475411nteger @ F @ ( produc2688509591584439069er_nat @ G @ X ) )
      = ( produc8603105652947943368nteger @ ( F @ ( product_fst_nat_nat @ X ) ) @ ( G @ ( product_snd_nat_nat @ X ) ) ) ) ).

% apfst_apsnd
thf(fact_7313_apfst__apsnd,axiom,
    ! [F: nat > produc8551481072490612790e_term > option6357759511663192854e_term,G: nat > product_prod_int_int,X: product_prod_nat_nat] :
      ( ( produc1174866932575707904nt_int @ F @ ( produc4342665141415107387nt_nat @ G @ X ) )
      = ( produc5700946648718959541nt_int @ ( F @ ( product_fst_nat_nat @ X ) ) @ ( G @ ( product_snd_nat_nat @ X ) ) ) ) ).

% apfst_apsnd
thf(fact_7314_apfst__apsnd,axiom,
    ! [F: nat > int > option6357759511663192854e_term,G: nat > product_prod_int_int,X: product_prod_nat_nat] :
      ( ( produc7939104695128876682nt_int @ F @ ( produc4342665141415107387nt_nat @ G @ X ) )
      = ( produc4305682042979456191nt_int @ ( F @ ( product_fst_nat_nat @ X ) ) @ ( G @ ( product_snd_nat_nat @ X ) ) ) ) ).

% apfst_apsnd
thf(fact_7315_bit__0,axiom,
    ! [A: code_integer] :
      ( ( bit_se9216721137139052372nteger @ A @ zero_zero_nat )
      = ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) ) ).

% bit_0
thf(fact_7316_bit__0,axiom,
    ! [A: nat] :
      ( ( bit_se1148574629649215175it_nat @ A @ zero_zero_nat )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) ) ).

% bit_0
thf(fact_7317_bit__0,axiom,
    ! [A: int] :
      ( ( bit_se1146084159140164899it_int @ A @ zero_zero_nat )
      = ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) ) ).

% bit_0
thf(fact_7318_bit__mod__2__iff,axiom,
    ! [A: code_integer,N: nat] :
      ( ( bit_se9216721137139052372nteger @ ( modulo364778990260209775nteger @ A @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ N )
      = ( ( N = zero_zero_nat )
        & ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A ) ) ) ).

% bit_mod_2_iff
thf(fact_7319_bit__mod__2__iff,axiom,
    ! [A: nat,N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( modulo_modulo_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ N )
      = ( ( N = zero_zero_nat )
        & ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) ) ).

% bit_mod_2_iff
thf(fact_7320_bit__mod__2__iff,axiom,
    ! [A: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( modulo_modulo_int @ A @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ N )
      = ( ( N = zero_zero_nat )
        & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) ) ).

% bit_mod_2_iff
thf(fact_7321_insert__compr,axiom,
    ( insert_Product_unit
    = ( ^ [A4: product_unit,B6: set_Product_unit] :
          ( collect_Product_unit
          @ ^ [X4: product_unit] :
              ( ( X4 = A4 )
              | ( member_Product_unit @ X4 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_7322_insert__compr,axiom,
    ( insert8211810215607154385at_nat
    = ( ^ [A4: product_prod_nat_nat,B6: set_Pr1261947904930325089at_nat] :
          ( collec3392354462482085612at_nat
          @ ^ [X4: product_prod_nat_nat] :
              ( ( X4 = A4 )
              | ( member8440522571783428010at_nat @ X4 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_7323_insert__compr,axiom,
    ( insert9069300056098147895at_nat
    = ( ^ [A4: produc3843707927480180839at_nat,B6: set_Pr4329608150637261639at_nat] :
          ( collec6321179662152712658at_nat
          @ ^ [X4: produc3843707927480180839at_nat] :
              ( ( X4 = A4 )
              | ( member8757157785044589968at_nat @ X4 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_7324_insert__compr,axiom,
    ( insert9200635055090092081at_nat
    = ( ^ [A4: set_Pr1261947904930325089at_nat,B6: set_se7855581050983116737at_nat] :
          ( collec5514110066124741708at_nat
          @ ^ [X4: set_Pr1261947904930325089at_nat] :
              ( ( X4 = A4 )
              | ( member2643936169264416010at_nat @ X4 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_7325_insert__compr,axiom,
    ( insert8897473484851387113nt_int
    = ( ^ [A4: set_Pr958786334691620121nt_int,B6: set_se6260736226359567993nt_int] :
          ( collec5210948495886036740nt_int
          @ ^ [X4: set_Pr958786334691620121nt_int] :
              ( ( X4 = A4 )
              | ( member2340774599025711042nt_int @ X4 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_7326_insert__compr,axiom,
    ( insert_set_nat
    = ( ^ [A4: set_nat,B6: set_set_nat] :
          ( collect_set_nat
          @ ^ [X4: set_nat] :
              ( ( X4 = A4 )
              | ( member_set_nat @ X4 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_7327_insert__compr,axiom,
    ( insert_nat
    = ( ^ [A4: nat,B6: set_nat] :
          ( collect_nat
          @ ^ [X4: nat] :
              ( ( X4 = A4 )
              | ( member_nat @ X4 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_7328_insert__compr,axiom,
    ( insert_int
    = ( ^ [A4: int,B6: set_int] :
          ( collect_int
          @ ^ [X4: int] :
              ( ( X4 = A4 )
              | ( member_int @ X4 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_7329_insert__Collect,axiom,
    ! [A: product_unit,P: product_unit > $o] :
      ( ( insert_Product_unit @ A @ ( collect_Product_unit @ P ) )
      = ( collect_Product_unit
        @ ^ [U2: product_unit] :
            ( ( U2 != A )
           => ( P @ U2 ) ) ) ) ).

% insert_Collect
thf(fact_7330_insert__Collect,axiom,
    ! [A: product_prod_nat_nat,P: product_prod_nat_nat > $o] :
      ( ( insert8211810215607154385at_nat @ A @ ( collec3392354462482085612at_nat @ P ) )
      = ( collec3392354462482085612at_nat
        @ ^ [U2: product_prod_nat_nat] :
            ( ( U2 != A )
           => ( P @ U2 ) ) ) ) ).

% insert_Collect
thf(fact_7331_insert__Collect,axiom,
    ! [A: produc3843707927480180839at_nat,P: produc3843707927480180839at_nat > $o] :
      ( ( insert9069300056098147895at_nat @ A @ ( collec6321179662152712658at_nat @ P ) )
      = ( collec6321179662152712658at_nat
        @ ^ [U2: produc3843707927480180839at_nat] :
            ( ( U2 != A )
           => ( P @ U2 ) ) ) ) ).

% insert_Collect
thf(fact_7332_insert__Collect,axiom,
    ! [A: set_Pr1261947904930325089at_nat,P: set_Pr1261947904930325089at_nat > $o] :
      ( ( insert9200635055090092081at_nat @ A @ ( collec5514110066124741708at_nat @ P ) )
      = ( collec5514110066124741708at_nat
        @ ^ [U2: set_Pr1261947904930325089at_nat] :
            ( ( U2 != A )
           => ( P @ U2 ) ) ) ) ).

% insert_Collect
thf(fact_7333_insert__Collect,axiom,
    ! [A: set_Pr958786334691620121nt_int,P: set_Pr958786334691620121nt_int > $o] :
      ( ( insert8897473484851387113nt_int @ A @ ( collec5210948495886036740nt_int @ P ) )
      = ( collec5210948495886036740nt_int
        @ ^ [U2: set_Pr958786334691620121nt_int] :
            ( ( U2 != A )
           => ( P @ U2 ) ) ) ) ).

% insert_Collect
thf(fact_7334_insert__Collect,axiom,
    ! [A: set_nat,P: set_nat > $o] :
      ( ( insert_set_nat @ A @ ( collect_set_nat @ P ) )
      = ( collect_set_nat
        @ ^ [U2: set_nat] :
            ( ( U2 != A )
           => ( P @ U2 ) ) ) ) ).

% insert_Collect
thf(fact_7335_insert__Collect,axiom,
    ! [A: nat,P: nat > $o] :
      ( ( insert_nat @ A @ ( collect_nat @ P ) )
      = ( collect_nat
        @ ^ [U2: nat] :
            ( ( U2 != A )
           => ( P @ U2 ) ) ) ) ).

% insert_Collect
thf(fact_7336_insert__Collect,axiom,
    ! [A: int,P: int > $o] :
      ( ( insert_int @ A @ ( collect_int @ P ) )
      = ( collect_int
        @ ^ [U2: int] :
            ( ( U2 != A )
           => ( P @ U2 ) ) ) ) ).

% insert_Collect
thf(fact_7337_bit__disjunctive__add__iff,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ! [N2: nat] :
          ( ~ ( bit_se1148574629649215175it_nat @ A @ N2 )
          | ~ ( bit_se1148574629649215175it_nat @ B @ N2 ) )
     => ( ( bit_se1148574629649215175it_nat @ ( plus_plus_nat @ A @ B ) @ N )
        = ( ( bit_se1148574629649215175it_nat @ A @ N )
          | ( bit_se1148574629649215175it_nat @ B @ N ) ) ) ) ).

% bit_disjunctive_add_iff
thf(fact_7338_bit__disjunctive__add__iff,axiom,
    ! [A: int,B: int,N: nat] :
      ( ! [N2: nat] :
          ( ~ ( bit_se1146084159140164899it_int @ A @ N2 )
          | ~ ( bit_se1146084159140164899it_int @ B @ N2 ) )
     => ( ( bit_se1146084159140164899it_int @ ( plus_plus_int @ A @ B ) @ N )
        = ( ( bit_se1146084159140164899it_int @ A @ N )
          | ( bit_se1146084159140164899it_int @ B @ N ) ) ) ) ).

% bit_disjunctive_add_iff
thf(fact_7339_apsnd__apfst__commute,axiom,
    ! [F: code_integer > code_integer,G: code_integer > code_integer,P4: produc8923325533196201883nteger] :
      ( ( produc6499014454317279255nteger @ F @ ( produc3195571438000033749nteger @ G @ P4 ) )
      = ( produc3195571438000033749nteger @ G @ ( produc6499014454317279255nteger @ F @ P4 ) ) ) ).

% apsnd_apfst_commute
thf(fact_7340_not__bit__1__Suc,axiom,
    ! [N: nat] :
      ~ ( bit_se9216721137139052372nteger @ one_one_Code_integer @ ( suc @ N ) ) ).

% not_bit_1_Suc
thf(fact_7341_not__bit__1__Suc,axiom,
    ! [N: nat] :
      ~ ( bit_se8040316288895769887atural @ one_one_Code_natural @ ( suc @ N ) ) ).

% not_bit_1_Suc
thf(fact_7342_not__bit__1__Suc,axiom,
    ! [N: nat] :
      ~ ( bit_se1148574629649215175it_nat @ one_one_nat @ ( suc @ N ) ) ).

% not_bit_1_Suc
thf(fact_7343_not__bit__1__Suc,axiom,
    ! [N: nat] :
      ~ ( bit_se1146084159140164899it_int @ one_one_int @ ( suc @ N ) ) ).

% not_bit_1_Suc
thf(fact_7344_bit__1__iff,axiom,
    ! [N: nat] :
      ( ( bit_se9216721137139052372nteger @ one_one_Code_integer @ N )
      = ( N = zero_zero_nat ) ) ).

% bit_1_iff
thf(fact_7345_bit__1__iff,axiom,
    ! [N: nat] :
      ( ( bit_se8040316288895769887atural @ one_one_Code_natural @ N )
      = ( N = zero_zero_nat ) ) ).

% bit_1_iff
thf(fact_7346_bit__1__iff,axiom,
    ! [N: nat] :
      ( ( bit_se1148574629649215175it_nat @ one_one_nat @ N )
      = ( N = zero_zero_nat ) ) ).

% bit_1_iff
thf(fact_7347_bit__1__iff,axiom,
    ! [N: nat] :
      ( ( bit_se1146084159140164899it_int @ one_one_int @ N )
      = ( N = zero_zero_nat ) ) ).

% bit_1_iff
thf(fact_7348_bit__numeral__simps_I1_J,axiom,
    ! [N: num] :
      ~ ( bit_se9216721137139052372nteger @ one_one_Code_integer @ ( numeral_numeral_nat @ N ) ) ).

% bit_numeral_simps(1)
thf(fact_7349_bit__numeral__simps_I1_J,axiom,
    ! [N: num] :
      ~ ( bit_se8040316288895769887atural @ one_one_Code_natural @ ( numeral_numeral_nat @ N ) ) ).

% bit_numeral_simps(1)
thf(fact_7350_bit__numeral__simps_I1_J,axiom,
    ! [N: num] :
      ~ ( bit_se1148574629649215175it_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) ) ).

% bit_numeral_simps(1)
thf(fact_7351_bit__numeral__simps_I1_J,axiom,
    ! [N: num] :
      ~ ( bit_se1146084159140164899it_int @ one_one_int @ ( numeral_numeral_nat @ N ) ) ).

% bit_numeral_simps(1)
thf(fact_7352_not__bit__Suc__0__Suc,axiom,
    ! [N: nat] :
      ~ ( bit_se1148574629649215175it_nat @ ( suc @ zero_zero_nat ) @ ( suc @ N ) ) ).

% not_bit_Suc_0_Suc
thf(fact_7353_bit__Suc__0__iff,axiom,
    ! [N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( N = zero_zero_nat ) ) ).

% bit_Suc_0_iff
thf(fact_7354_disjunctive__add,axiom,
    ! [A: int,B: int] :
      ( ! [N2: nat] :
          ( ~ ( bit_se1146084159140164899it_int @ A @ N2 )
          | ~ ( bit_se1146084159140164899it_int @ B @ N2 ) )
     => ( ( plus_plus_int @ A @ B )
        = ( bit_se1409905431419307370or_int @ A @ B ) ) ) ).

% disjunctive_add
thf(fact_7355_disjunctive__add,axiom,
    ! [A: nat,B: nat] :
      ( ! [N2: nat] :
          ( ~ ( bit_se1148574629649215175it_nat @ A @ N2 )
          | ~ ( bit_se1148574629649215175it_nat @ B @ N2 ) )
     => ( ( plus_plus_nat @ A @ B )
        = ( bit_se1412395901928357646or_nat @ A @ B ) ) ) ).

% disjunctive_add
thf(fact_7356_bit__of__bool__iff,axiom,
    ! [B: $o,N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( zero_n2687167440665602831ol_nat @ B ) @ N )
      = ( B
        & ( N = zero_zero_nat ) ) ) ).

% bit_of_bool_iff
thf(fact_7357_bit__of__bool__iff,axiom,
    ! [B: $o,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( zero_n2684676970156552555ol_int @ B ) @ N )
      = ( B
        & ( N = zero_zero_nat ) ) ) ).

% bit_of_bool_iff
thf(fact_7358_bit__drop__bit__eq,axiom,
    ! [N: nat,A: int] :
      ( ( bit_se1146084159140164899it_int @ ( bit_se8568078237143864401it_int @ N @ A ) )
      = ( comp_nat_o_nat @ ( bit_se1146084159140164899it_int @ A ) @ ( plus_plus_nat @ N ) ) ) ).

% bit_drop_bit_eq
thf(fact_7359_bit__drop__bit__eq,axiom,
    ! [N: nat,A: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( bit_se8570568707652914677it_nat @ N @ A ) )
      = ( comp_nat_o_nat @ ( bit_se1148574629649215175it_nat @ A ) @ ( plus_plus_nat @ N ) ) ) ).

% bit_drop_bit_eq
thf(fact_7360_length__pos__if__in__set,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Xs2: list_s1210847774152347623at_nat] :
      ( ( member2643936169264416010at_nat @ X @ ( set_se5049602875457034614at_nat @ Xs2 ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s8736152011456118867at_nat @ Xs2 ) ) ) ).

% length_pos_if_in_set
thf(fact_7361_length__pos__if__in__set,axiom,
    ! [X: set_Pr958786334691620121nt_int,Xs2: list_s8839374986383574687nt_int] :
      ( ( member2340774599025711042nt_int @ X @ ( set_se4746441305218329646nt_int @ Xs2 ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s7141307186832570123nt_int @ Xs2 ) ) ) ).

% length_pos_if_in_set
thf(fact_7362_length__pos__if__in__set,axiom,
    ! [X: set_nat,Xs2: list_set_nat] :
      ( ( member_set_nat @ X @ ( set_set_nat2 @ Xs2 ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s3254054031482475050et_nat @ Xs2 ) ) ) ).

% length_pos_if_in_set
thf(fact_7363_length__pos__if__in__set,axiom,
    ! [X: int,Xs2: list_int] :
      ( ( member_int @ X @ ( set_int2 @ Xs2 ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_int @ Xs2 ) ) ) ).

% length_pos_if_in_set
thf(fact_7364_length__pos__if__in__set,axiom,
    ! [X: char,Xs2: list_char] :
      ( ( member_char @ X @ ( set_char2 @ Xs2 ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_char @ Xs2 ) ) ) ).

% length_pos_if_in_set
thf(fact_7365_length__pos__if__in__set,axiom,
    ! [X: nat,Xs2: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs2 ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs2 ) ) ) ).

% length_pos_if_in_set
thf(fact_7366_finite__lists__length__eq,axiom,
    ! [A3: set_int,N: nat] :
      ( ( finite_finite_int @ A3 )
     => ( finite3922522038869484883st_int
        @ ( collect_list_int
          @ ^ [Xs: list_int] :
              ( ( ord_less_eq_set_int @ ( set_int2 @ Xs ) @ A3 )
              & ( ( size_size_list_int @ Xs )
                = N ) ) ) ) ) ).

% finite_lists_length_eq
thf(fact_7367_finite__lists__length__eq,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,N: nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( finite500796754983035824at_nat
        @ ( collec3343600615725829874at_nat
          @ ^ [Xs: list_P6011104703257516679at_nat] :
              ( ( ord_le3146513528884898305at_nat @ ( set_Pr5648618587558075414at_nat @ Xs ) @ A3 )
              & ( ( size_s5460976970255530739at_nat @ Xs )
                = N ) ) ) ) ) ).

% finite_lists_length_eq
thf(fact_7368_finite__lists__length__eq,axiom,
    ! [A3: set_char,N: nat] :
      ( ( finite_finite_char @ A3 )
     => ( finite3619747586194699384t_char
        @ ( collect_list_char
          @ ^ [Xs: list_char] :
              ( ( ord_less_eq_set_char @ ( set_char2 @ Xs ) @ A3 )
              & ( ( size_size_list_char @ Xs )
                = N ) ) ) ) ) ).

% finite_lists_length_eq
thf(fact_7369_finite__lists__length__eq,axiom,
    ! [A3: set_nat,N: nat] :
      ( ( finite_finite_nat @ A3 )
     => ( finite8100373058378681591st_nat
        @ ( collect_list_nat
          @ ^ [Xs: list_nat] :
              ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ A3 )
              & ( ( size_size_list_nat @ Xs )
                = N ) ) ) ) ) ).

% finite_lists_length_eq
thf(fact_7370_not__bit__Suc__0__numeral,axiom,
    ! [N: num] :
      ~ ( bit_se1148574629649215175it_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ N ) ) ).

% not_bit_Suc_0_numeral
thf(fact_7371_bit__iff__and__drop__bit__eq__1,axiom,
    ( bit_se9216721137139052372nteger
    = ( ^ [A4: code_integer,N5: nat] :
          ( ( bit_se3949692690581998587nteger @ ( bit_se3928097537394005634nteger @ N5 @ A4 ) @ one_one_Code_integer )
          = one_one_Code_integer ) ) ) ).

% bit_iff_and_drop_bit_eq_1
thf(fact_7372_bit__iff__and__drop__bit__eq__1,axiom,
    ( bit_se8040316288895769887atural
    = ( ^ [A4: code_natural,N5: nat] :
          ( ( bit_se2773287842338716102atural @ ( bit_se2751692689150723149atural @ N5 @ A4 ) @ one_one_Code_natural )
          = one_one_Code_natural ) ) ) ).

% bit_iff_and_drop_bit_eq_1
thf(fact_7373_bit__iff__and__drop__bit__eq__1,axiom,
    ( bit_se1146084159140164899it_int
    = ( ^ [A4: int,N5: nat] :
          ( ( bit_se725231765392027082nd_int @ ( bit_se8568078237143864401it_int @ N5 @ A4 ) @ one_one_int )
          = one_one_int ) ) ) ).

% bit_iff_and_drop_bit_eq_1
thf(fact_7374_bit__iff__and__drop__bit__eq__1,axiom,
    ( bit_se1148574629649215175it_nat
    = ( ^ [A4: nat,N5: nat] :
          ( ( bit_se727722235901077358nd_nat @ ( bit_se8570568707652914677it_nat @ N5 @ A4 ) @ one_one_nat )
          = one_one_nat ) ) ) ).

% bit_iff_and_drop_bit_eq_1
thf(fact_7375_sum_Oinsert__if,axiom,
    ! [A3: set_Product_unit,X: product_unit,G: product_unit > rat] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( ( member_Product_unit @ X @ A3 )
         => ( ( groups8131667117488461483it_rat @ G @ ( insert_Product_unit @ X @ A3 ) )
            = ( groups8131667117488461483it_rat @ G @ A3 ) ) )
        & ( ~ ( member_Product_unit @ X @ A3 )
         => ( ( groups8131667117488461483it_rat @ G @ ( insert_Product_unit @ X @ A3 ) )
            = ( plus_plus_rat @ ( G @ X ) @ ( groups8131667117488461483it_rat @ G @ A3 ) ) ) ) ) ) ).

% sum.insert_if
thf(fact_7376_sum_Oinsert__if,axiom,
    ! [A3: set_nat,X: nat,G: nat > rat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( member_nat @ X @ A3 )
         => ( ( groups2906978787729119204at_rat @ G @ ( insert_nat @ X @ A3 ) )
            = ( groups2906978787729119204at_rat @ G @ A3 ) ) )
        & ( ~ ( member_nat @ X @ A3 )
         => ( ( groups2906978787729119204at_rat @ G @ ( insert_nat @ X @ A3 ) )
            = ( plus_plus_rat @ ( G @ X ) @ ( groups2906978787729119204at_rat @ G @ A3 ) ) ) ) ) ) ).

% sum.insert_if
thf(fact_7377_sum_Oinsert__if,axiom,
    ! [A3: set_int,X: int,G: int > rat] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( member_int @ X @ A3 )
         => ( ( groups3906332499630173760nt_rat @ G @ ( insert_int @ X @ A3 ) )
            = ( groups3906332499630173760nt_rat @ G @ A3 ) ) )
        & ( ~ ( member_int @ X @ A3 )
         => ( ( groups3906332499630173760nt_rat @ G @ ( insert_int @ X @ A3 ) )
            = ( plus_plus_rat @ ( G @ X ) @ ( groups3906332499630173760nt_rat @ G @ A3 ) ) ) ) ) ) ).

% sum.insert_if
thf(fact_7378_sum_Oinsert__if,axiom,
    ! [A3: set_Product_unit,X: product_unit,G: product_unit > nat] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( ( member_Product_unit @ X @ A3 )
         => ( ( groups8766797177574957219it_nat @ G @ ( insert_Product_unit @ X @ A3 ) )
            = ( groups8766797177574957219it_nat @ G @ A3 ) ) )
        & ( ~ ( member_Product_unit @ X @ A3 )
         => ( ( groups8766797177574957219it_nat @ G @ ( insert_Product_unit @ X @ A3 ) )
            = ( plus_plus_nat @ ( G @ X ) @ ( groups8766797177574957219it_nat @ G @ A3 ) ) ) ) ) ) ).

% sum.insert_if
thf(fact_7379_sum_Oinsert__if,axiom,
    ! [A3: set_int,X: int,G: int > nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( member_int @ X @ A3 )
         => ( ( groups4541462559716669496nt_nat @ G @ ( insert_int @ X @ A3 ) )
            = ( groups4541462559716669496nt_nat @ G @ A3 ) ) )
        & ( ~ ( member_int @ X @ A3 )
         => ( ( groups4541462559716669496nt_nat @ G @ ( insert_int @ X @ A3 ) )
            = ( plus_plus_nat @ ( G @ X ) @ ( groups4541462559716669496nt_nat @ G @ A3 ) ) ) ) ) ) ).

% sum.insert_if
thf(fact_7380_sum_Oinsert__if,axiom,
    ! [A3: set_Product_unit,X: product_unit,G: product_unit > int] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( ( member_Product_unit @ X @ A3 )
         => ( ( groups8764306707065906943it_int @ G @ ( insert_Product_unit @ X @ A3 ) )
            = ( groups8764306707065906943it_int @ G @ A3 ) ) )
        & ( ~ ( member_Product_unit @ X @ A3 )
         => ( ( groups8764306707065906943it_int @ G @ ( insert_Product_unit @ X @ A3 ) )
            = ( plus_plus_int @ ( G @ X ) @ ( groups8764306707065906943it_int @ G @ A3 ) ) ) ) ) ) ).

% sum.insert_if
thf(fact_7381_sum_Oinsert__if,axiom,
    ! [A3: set_nat,X: nat,G: nat > int] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( member_nat @ X @ A3 )
         => ( ( groups3539618377306564664at_int @ G @ ( insert_nat @ X @ A3 ) )
            = ( groups3539618377306564664at_int @ G @ A3 ) ) )
        & ( ~ ( member_nat @ X @ A3 )
         => ( ( groups3539618377306564664at_int @ G @ ( insert_nat @ X @ A3 ) )
            = ( plus_plus_int @ ( G @ X ) @ ( groups3539618377306564664at_int @ G @ A3 ) ) ) ) ) ) ).

% sum.insert_if
thf(fact_7382_sum_Oinsert__if,axiom,
    ! [A3: set_nat,X: nat,G: nat > nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( member_nat @ X @ A3 )
         => ( ( groups3542108847815614940at_nat @ G @ ( insert_nat @ X @ A3 ) )
            = ( groups3542108847815614940at_nat @ G @ A3 ) ) )
        & ( ~ ( member_nat @ X @ A3 )
         => ( ( groups3542108847815614940at_nat @ G @ ( insert_nat @ X @ A3 ) )
            = ( plus_plus_nat @ ( G @ X ) @ ( groups3542108847815614940at_nat @ G @ A3 ) ) ) ) ) ) ).

% sum.insert_if
thf(fact_7383_sum_Oinsert__if,axiom,
    ! [A3: set_int,X: int,G: int > int] :
      ( ( finite_finite_int @ A3 )
     => ( ( ( member_int @ X @ A3 )
         => ( ( groups4538972089207619220nt_int @ G @ ( insert_int @ X @ A3 ) )
            = ( groups4538972089207619220nt_int @ G @ A3 ) ) )
        & ( ~ ( member_int @ X @ A3 )
         => ( ( groups4538972089207619220nt_int @ G @ ( insert_int @ X @ A3 ) )
            = ( plus_plus_int @ ( G @ X ) @ ( groups4538972089207619220nt_int @ G @ A3 ) ) ) ) ) ) ).

% sum.insert_if
thf(fact_7384_sum_Oinsert__if,axiom,
    ! [A3: set_set_nat,X: set_nat,G: set_nat > rat] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( ( member_set_nat @ X @ A3 )
         => ( ( groups7659867448343625626at_rat @ G @ ( insert_set_nat @ X @ A3 ) )
            = ( groups7659867448343625626at_rat @ G @ A3 ) ) )
        & ( ~ ( member_set_nat @ X @ A3 )
         => ( ( groups7659867448343625626at_rat @ G @ ( insert_set_nat @ X @ A3 ) )
            = ( plus_plus_rat @ ( G @ X ) @ ( groups7659867448343625626at_rat @ G @ A3 ) ) ) ) ) ) ).

% sum.insert_if
thf(fact_7385_atLeast0__atMost__Suc,axiom,
    ! [N: nat] :
      ( ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ ( suc @ N ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ).

% atLeast0_atMost_Suc
thf(fact_7386_atLeast0__lessThan__Suc,axiom,
    ! [N: nat] :
      ( ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ N @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ).

% atLeast0_lessThan_Suc
thf(fact_7387_finite__lists__length__le,axiom,
    ! [A3: set_int,N: nat] :
      ( ( finite_finite_int @ A3 )
     => ( finite3922522038869484883st_int
        @ ( collect_list_int
          @ ^ [Xs: list_int] :
              ( ( ord_less_eq_set_int @ ( set_int2 @ Xs ) @ A3 )
              & ( ord_less_eq_nat @ ( size_size_list_int @ Xs ) @ N ) ) ) ) ) ).

% finite_lists_length_le
thf(fact_7388_finite__lists__length__le,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,N: nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( finite500796754983035824at_nat
        @ ( collec3343600615725829874at_nat
          @ ^ [Xs: list_P6011104703257516679at_nat] :
              ( ( ord_le3146513528884898305at_nat @ ( set_Pr5648618587558075414at_nat @ Xs ) @ A3 )
              & ( ord_less_eq_nat @ ( size_s5460976970255530739at_nat @ Xs ) @ N ) ) ) ) ) ).

% finite_lists_length_le
thf(fact_7389_finite__lists__length__le,axiom,
    ! [A3: set_char,N: nat] :
      ( ( finite_finite_char @ A3 )
     => ( finite3619747586194699384t_char
        @ ( collect_list_char
          @ ^ [Xs: list_char] :
              ( ( ord_less_eq_set_char @ ( set_char2 @ Xs ) @ A3 )
              & ( ord_less_eq_nat @ ( size_size_list_char @ Xs ) @ N ) ) ) ) ) ).

% finite_lists_length_le
thf(fact_7390_finite__lists__length__le,axiom,
    ! [A3: set_nat,N: nat] :
      ( ( finite_finite_nat @ A3 )
     => ( finite8100373058378681591st_nat
        @ ( collect_list_nat
          @ ^ [Xs: list_nat] :
              ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ A3 )
              & ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N ) ) ) ) ) ).

% finite_lists_length_le
thf(fact_7391_bit__numeral__rec_I1_J,axiom,
    ! [W: num,N: nat] :
      ( ( bit_se9216721137139052372nteger @ ( numera6620942414471956472nteger @ ( bit0 @ W ) ) @ N )
      = ( case_nat_o @ $false @ ( bit_se9216721137139052372nteger @ ( numera6620942414471956472nteger @ W ) ) @ N ) ) ).

% bit_numeral_rec(1)
thf(fact_7392_bit__numeral__rec_I1_J,axiom,
    ! [W: num,N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( numeral_numeral_nat @ ( bit0 @ W ) ) @ N )
      = ( case_nat_o @ $false @ ( bit_se1148574629649215175it_nat @ ( numeral_numeral_nat @ W ) ) @ N ) ) ).

% bit_numeral_rec(1)
thf(fact_7393_bit__numeral__rec_I1_J,axiom,
    ! [W: num,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( numeral_numeral_int @ ( bit0 @ W ) ) @ N )
      = ( case_nat_o @ $false @ ( bit_se1146084159140164899it_int @ ( numeral_numeral_int @ W ) ) @ N ) ) ).

% bit_numeral_rec(1)
thf(fact_7394_bit__numeral__rec_I2_J,axiom,
    ! [W: num,N: nat] :
      ( ( bit_se9216721137139052372nteger @ ( numera6620942414471956472nteger @ ( bit1 @ W ) ) @ N )
      = ( case_nat_o @ $true @ ( bit_se9216721137139052372nteger @ ( numera6620942414471956472nteger @ W ) ) @ N ) ) ).

% bit_numeral_rec(2)
thf(fact_7395_bit__numeral__rec_I2_J,axiom,
    ! [W: num,N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( numeral_numeral_nat @ ( bit1 @ W ) ) @ N )
      = ( case_nat_o @ $true @ ( bit_se1148574629649215175it_nat @ ( numeral_numeral_nat @ W ) ) @ N ) ) ).

% bit_numeral_rec(2)
thf(fact_7396_bit__numeral__rec_I2_J,axiom,
    ! [W: num,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( numeral_numeral_int @ ( bit1 @ W ) ) @ N )
      = ( case_nat_o @ $true @ ( bit_se1146084159140164899it_int @ ( numeral_numeral_int @ W ) ) @ N ) ) ).

% bit_numeral_rec(2)
thf(fact_7397_bit__iff__and__push__bit__not__eq__0,axiom,
    ( bit_se9216721137139052372nteger
    = ( ^ [A4: code_integer,N5: nat] :
          ( ( bit_se3949692690581998587nteger @ A4 @ ( bit_se7788150548672797655nteger @ N5 @ one_one_Code_integer ) )
         != zero_z3403309356797280102nteger ) ) ) ).

% bit_iff_and_push_bit_not_eq_0
thf(fact_7398_bit__iff__and__push__bit__not__eq__0,axiom,
    ( bit_se8040316288895769887atural
    = ( ^ [A4: code_natural,N5: nat] :
          ( ( bit_se2773287842338716102atural @ A4 @ ( bit_se6611745700429515170atural @ N5 @ one_one_Code_natural ) )
         != zero_z2226904508553997617atural ) ) ) ).

% bit_iff_and_push_bit_not_eq_0
thf(fact_7399_bit__iff__and__push__bit__not__eq__0,axiom,
    ( bit_se1146084159140164899it_int
    = ( ^ [A4: int,N5: nat] :
          ( ( bit_se725231765392027082nd_int @ A4 @ ( bit_se545348938243370406it_int @ N5 @ one_one_int ) )
         != zero_zero_int ) ) ) ).

% bit_iff_and_push_bit_not_eq_0
thf(fact_7400_bit__iff__and__push__bit__not__eq__0,axiom,
    ( bit_se1148574629649215175it_nat
    = ( ^ [A4: nat,N5: nat] :
          ( ( bit_se727722235901077358nd_nat @ A4 @ ( bit_se547839408752420682it_nat @ N5 @ one_one_nat ) )
         != zero_zero_nat ) ) ) ).

% bit_iff_and_push_bit_not_eq_0
thf(fact_7401_card__lists__length__eq,axiom,
    ! [A3: set_Product_unit,N: nat] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( finite3744894192721311803t_unit
          @ ( collec4736972532740828926t_unit
            @ ^ [Xs: list_Product_unit] :
                ( ( ord_le3507040750410214029t_unit @ ( set_Product_unit2 @ Xs ) @ A3 )
                & ( ( size_s245203480648594047t_unit @ Xs )
                  = N ) ) ) )
        = ( power_power_nat @ ( finite410649719033368117t_unit @ A3 ) @ N ) ) ) ).

% card_lists_length_eq
thf(fact_7402_card__lists__length__eq,axiom,
    ! [A3: set_set_nat,N: nat] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( finite5631907774883551598et_nat
          @ ( collect_list_set_nat
            @ ^ [Xs: list_set_nat] :
                ( ( ord_le6893508408891458716et_nat @ ( set_set_nat2 @ Xs ) @ A3 )
                & ( ( size_s3254054031482475050et_nat @ Xs )
                  = N ) ) ) )
        = ( power_power_nat @ ( finite_card_set_nat @ A3 ) @ N ) ) ) ).

% card_lists_length_eq
thf(fact_7403_card__lists__length__eq,axiom,
    ! [A3: set_list_nat,N: nat] :
      ( ( finite8100373058378681591st_nat @ A3 )
     => ( ( finite7325466520557071688st_nat
          @ ( collec5989764272469232197st_nat
            @ ^ [Xs: list_list_nat] :
                ( ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Xs ) @ A3 )
                & ( ( size_s3023201423986296836st_nat @ Xs )
                  = N ) ) ) )
        = ( power_power_nat @ ( finite_card_list_nat @ A3 ) @ N ) ) ) ).

% card_lists_length_eq
thf(fact_7404_card__lists__length__eq,axiom,
    ! [A3: set_int,N: nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( finite_card_list_int
          @ ( collect_list_int
            @ ^ [Xs: list_int] :
                ( ( ord_less_eq_set_int @ ( set_int2 @ Xs ) @ A3 )
                & ( ( size_size_list_int @ Xs )
                  = N ) ) ) )
        = ( power_power_nat @ ( finite_card_int @ A3 ) @ N ) ) ) ).

% card_lists_length_eq
thf(fact_7405_card__lists__length__eq,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,N: nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( ( finite249151656366948015at_nat
          @ ( collec3343600615725829874at_nat
            @ ^ [Xs: list_P6011104703257516679at_nat] :
                ( ( ord_le3146513528884898305at_nat @ ( set_Pr5648618587558075414at_nat @ Xs ) @ A3 )
                & ( ( size_s5460976970255530739at_nat @ Xs )
                  = N ) ) ) )
        = ( power_power_nat @ ( finite711546835091564841at_nat @ A3 ) @ N ) ) ) ).

% card_lists_length_eq
thf(fact_7406_card__lists__length__eq,axiom,
    ! [A3: set_char,N: nat] :
      ( ( finite_finite_char @ A3 )
     => ( ( finite1726956870759998265t_char
          @ ( collect_list_char
            @ ^ [Xs: list_char] :
                ( ( ord_less_eq_set_char @ ( set_char2 @ Xs ) @ A3 )
                & ( ( size_size_list_char @ Xs )
                  = N ) ) ) )
        = ( power_power_nat @ ( finite_card_char @ A3 ) @ N ) ) ) ).

% card_lists_length_eq
thf(fact_7407_card__lists__length__eq,axiom,
    ! [A3: set_nat,N: nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( finite_card_list_nat
          @ ( collect_list_nat
            @ ^ [Xs: list_nat] :
                ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ A3 )
                & ( ( size_size_list_nat @ Xs )
                  = N ) ) ) )
        = ( power_power_nat @ ( finite_card_nat @ A3 ) @ N ) ) ) ).

% card_lists_length_eq
thf(fact_7408_exp__eq__0__imp__not__bit,axiom,
    ! [N: nat,A: code_natural] :
      ( ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N )
        = zero_z2226904508553997617atural )
     => ~ ( bit_se8040316288895769887atural @ A @ N ) ) ).

% exp_eq_0_imp_not_bit
thf(fact_7409_exp__eq__0__imp__not__bit,axiom,
    ! [N: nat,A: code_integer] :
      ( ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N )
        = zero_z3403309356797280102nteger )
     => ~ ( bit_se9216721137139052372nteger @ A @ N ) ) ).

% exp_eq_0_imp_not_bit
thf(fact_7410_exp__eq__0__imp__not__bit,axiom,
    ! [N: nat,A: nat] :
      ( ( ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
        = zero_zero_nat )
     => ~ ( bit_se1148574629649215175it_nat @ A @ N ) ) ).

% exp_eq_0_imp_not_bit
thf(fact_7411_exp__eq__0__imp__not__bit,axiom,
    ! [N: nat,A: int] :
      ( ( ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N )
        = zero_zero_int )
     => ~ ( bit_se1146084159140164899it_int @ A @ N ) ) ).

% exp_eq_0_imp_not_bit
thf(fact_7412_int__bit__bound,axiom,
    ! [K: int] :
      ~ ! [N2: nat] :
          ( ! [M3: nat] :
              ( ( ord_less_eq_nat @ N2 @ M3 )
             => ( ( bit_se1146084159140164899it_int @ K @ M3 )
                = ( bit_se1146084159140164899it_int @ K @ N2 ) ) )
         => ~ ( ( ord_less_nat @ zero_zero_nat @ N2 )
             => ( ( bit_se1146084159140164899it_int @ K @ ( minus_minus_nat @ N2 @ one_one_nat ) )
                = ( ~ ( bit_se1146084159140164899it_int @ K @ N2 ) ) ) ) ) ).

% int_bit_bound
thf(fact_7413_and__exp__eq__0__iff__not__bit,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ( bit_se2773287842338716102atural @ A @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ N ) )
        = zero_z2226904508553997617atural )
      = ( ~ ( bit_se8040316288895769887atural @ A @ N ) ) ) ).

% and_exp_eq_0_iff_not_bit
thf(fact_7414_and__exp__eq__0__iff__not__bit,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ( bit_se3949692690581998587nteger @ A @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ N ) )
        = zero_z3403309356797280102nteger )
      = ( ~ ( bit_se9216721137139052372nteger @ A @ N ) ) ) ).

% and_exp_eq_0_iff_not_bit
thf(fact_7415_and__exp__eq__0__iff__not__bit,axiom,
    ! [A: int,N: nat] :
      ( ( ( bit_se725231765392027082nd_int @ A @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
        = zero_zero_int )
      = ( ~ ( bit_se1146084159140164899it_int @ A @ N ) ) ) ).

% and_exp_eq_0_iff_not_bit
thf(fact_7416_and__exp__eq__0__iff__not__bit,axiom,
    ! [A: nat,N: nat] :
      ( ( ( bit_se727722235901077358nd_nat @ A @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
        = zero_zero_nat )
      = ( ~ ( bit_se1148574629649215175it_nat @ A @ N ) ) ) ).

% and_exp_eq_0_iff_not_bit
thf(fact_7417_gcd__nat_Osemilattice__neutr__order__axioms,axiom,
    ( semila1623282765462674594er_nat @ gcd_gcd_nat @ zero_zero_nat @ dvd_dvd_nat
    @ ^ [M5: nat,N5: nat] :
        ( ( dvd_dvd_nat @ M5 @ N5 )
        & ( M5 != N5 ) ) ) ).

% gcd_nat.semilattice_neutr_order_axioms
thf(fact_7418_card__insert__le__m1,axiom,
    ! [N: nat,Y3: set_int,X: int] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ ( finite_card_int @ Y3 ) @ ( minus_minus_nat @ N @ one_one_nat ) )
       => ( ord_less_eq_nat @ ( finite_card_int @ ( insert_int @ X @ Y3 ) ) @ N ) ) ) ).

% card_insert_le_m1
thf(fact_7419_card__insert__le__m1,axiom,
    ! [N: nat,Y3: set_Pr1261947904930325089at_nat,X: product_prod_nat_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ ( finite711546835091564841at_nat @ Y3 ) @ ( minus_minus_nat @ N @ one_one_nat ) )
       => ( ord_less_eq_nat @ ( finite711546835091564841at_nat @ ( insert8211810215607154385at_nat @ X @ Y3 ) ) @ N ) ) ) ).

% card_insert_le_m1
thf(fact_7420_card__insert__le__m1,axiom,
    ! [N: nat,Y3: set_Pr4329608150637261639at_nat,X: produc3843707927480180839at_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ ( finite3771342082235030671at_nat @ Y3 ) @ ( minus_minus_nat @ N @ one_one_nat ) )
       => ( ord_less_eq_nat @ ( finite3771342082235030671at_nat @ ( insert9069300056098147895at_nat @ X @ Y3 ) ) @ N ) ) ) ).

% card_insert_le_m1
thf(fact_7421_card__insert__le__m1,axiom,
    ! [N: nat,Y3: set_nat,X: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ ( finite_card_nat @ Y3 ) @ ( minus_minus_nat @ N @ one_one_nat ) )
       => ( ord_less_eq_nat @ ( finite_card_nat @ ( insert_nat @ X @ Y3 ) ) @ N ) ) ) ).

% card_insert_le_m1
thf(fact_7422_card__insert__le__m1,axiom,
    ! [N: nat,Y3: set_Product_unit,X: product_unit] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ ( finite410649719033368117t_unit @ Y3 ) @ ( minus_minus_nat @ N @ one_one_nat ) )
       => ( ord_less_eq_nat @ ( finite410649719033368117t_unit @ ( insert_Product_unit @ X @ Y3 ) ) @ N ) ) ) ).

% card_insert_le_m1
thf(fact_7423_card__insert__le__m1,axiom,
    ! [N: nat,Y3: set_set_nat,X: set_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ ( finite_card_set_nat @ Y3 ) @ ( minus_minus_nat @ N @ one_one_nat ) )
       => ( ord_less_eq_nat @ ( finite_card_set_nat @ ( insert_set_nat @ X @ Y3 ) ) @ N ) ) ) ).

% card_insert_le_m1
thf(fact_7424_card__insert__le__m1,axiom,
    ! [N: nat,Y3: set_list_nat,X: list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ ( finite_card_list_nat @ Y3 ) @ ( minus_minus_nat @ N @ one_one_nat ) )
       => ( ord_less_eq_nat @ ( finite_card_list_nat @ ( insert_list_nat @ X @ Y3 ) ) @ N ) ) ) ).

% card_insert_le_m1
thf(fact_7425_take__bit__sum,axiom,
    ( bit_se2925701944663578781it_nat
    = ( ^ [N5: nat,A4: nat] :
          ( groups3542108847815614940at_nat
          @ ^ [K3: nat] : ( bit_se547839408752420682it_nat @ K3 @ ( zero_n2687167440665602831ol_nat @ ( bit_se1148574629649215175it_nat @ A4 @ K3 ) ) )
          @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N5 ) ) ) ) ).

% take_bit_sum
thf(fact_7426_take__bit__sum,axiom,
    ( bit_se2923211474154528505it_int
    = ( ^ [N5: nat,A4: int] :
          ( groups3539618377306564664at_int
          @ ^ [K3: nat] : ( bit_se545348938243370406it_int @ K3 @ ( zero_n2684676970156552555ol_int @ ( bit_se1146084159140164899it_int @ A4 @ K3 ) ) )
          @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N5 ) ) ) ) ).

% take_bit_sum
thf(fact_7427_even__bit__succ__iff,axiom,
    ! [A: code_natural,N: nat] :
      ( ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
     => ( ( bit_se8040316288895769887atural @ ( plus_p4538020629002901425atural @ one_one_Code_natural @ A ) @ N )
        = ( ( bit_se8040316288895769887atural @ A @ N )
          | ( N = zero_zero_nat ) ) ) ) ).

% even_bit_succ_iff
thf(fact_7428_even__bit__succ__iff,axiom,
    ! [A: code_integer,N: nat] :
      ( ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
     => ( ( bit_se9216721137139052372nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ A ) @ N )
        = ( ( bit_se9216721137139052372nteger @ A @ N )
          | ( N = zero_zero_nat ) ) ) ) ).

% even_bit_succ_iff
thf(fact_7429_even__bit__succ__iff,axiom,
    ! [A: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ( ( bit_se1148574629649215175it_nat @ ( plus_plus_nat @ one_one_nat @ A ) @ N )
        = ( ( bit_se1148574629649215175it_nat @ A @ N )
          | ( N = zero_zero_nat ) ) ) ) ).

% even_bit_succ_iff
thf(fact_7430_even__bit__succ__iff,axiom,
    ! [A: int,N: nat] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ( ( bit_se1146084159140164899it_int @ ( plus_plus_int @ one_one_int @ A ) @ N )
        = ( ( bit_se1146084159140164899it_int @ A @ N )
          | ( N = zero_zero_nat ) ) ) ) ).

% even_bit_succ_iff
thf(fact_7431_odd__bit__iff__bit__pred,axiom,
    ! [A: code_natural,N: nat] :
      ( ~ ( dvd_dvd_Code_natural @ ( numera5444537566228673987atural @ ( bit0 @ one ) ) @ A )
     => ( ( bit_se8040316288895769887atural @ A @ N )
        = ( ( bit_se8040316288895769887atural @ ( minus_7197305767214868737atural @ A @ one_one_Code_natural ) @ N )
          | ( N = zero_zero_nat ) ) ) ) ).

% odd_bit_iff_bit_pred
thf(fact_7432_odd__bit__iff__bit__pred,axiom,
    ! [A: code_integer,N: nat] :
      ( ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ A )
     => ( ( bit_se9216721137139052372nteger @ A @ N )
        = ( ( bit_se9216721137139052372nteger @ ( minus_8373710615458151222nteger @ A @ one_one_Code_integer ) @ N )
          | ( N = zero_zero_nat ) ) ) ) ).

% odd_bit_iff_bit_pred
thf(fact_7433_odd__bit__iff__bit__pred,axiom,
    ! [A: nat,N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ( ( bit_se1148574629649215175it_nat @ A @ N )
        = ( ( bit_se1148574629649215175it_nat @ ( minus_minus_nat @ A @ one_one_nat ) @ N )
          | ( N = zero_zero_nat ) ) ) ) ).

% odd_bit_iff_bit_pred
thf(fact_7434_odd__bit__iff__bit__pred,axiom,
    ! [A: int,N: nat] :
      ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ( ( bit_se1146084159140164899it_int @ A @ N )
        = ( ( bit_se1146084159140164899it_int @ ( minus_minus_int @ A @ one_one_int ) @ N )
          | ( N = zero_zero_nat ) ) ) ) ).

% odd_bit_iff_bit_pred
thf(fact_7435_set__decode__plus__power__2,axiom,
    ! [N: nat,Z: nat] :
      ( ~ ( member_nat @ N @ ( nat_set_decode @ Z ) )
     => ( ( nat_set_decode @ ( plus_plus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ Z ) )
        = ( insert_nat @ N @ ( nat_set_decode @ Z ) ) ) ) ).

% set_decode_plus_power_2
thf(fact_7436_signed__take__bit__code,axiom,
    ( bit_ri6519982836138164636nteger
    = ( ^ [N5: nat,A4: code_integer] : ( if_Code_integer @ ( bit_se9216721137139052372nteger @ ( bit_se1745604003318907178nteger @ ( suc @ N5 ) @ A4 ) @ N5 ) @ ( plus_p5714425477246183910nteger @ ( bit_se1745604003318907178nteger @ ( suc @ N5 ) @ A4 ) @ ( bit_se7788150548672797655nteger @ ( suc @ N5 ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ) @ ( bit_se1745604003318907178nteger @ ( suc @ N5 ) @ A4 ) ) ) ) ).

% signed_take_bit_code
thf(fact_7437_signed__take__bit__code,axiom,
    ( bit_ri631733984087533419it_int
    = ( ^ [N5: nat,A4: int] : ( if_int @ ( bit_se1146084159140164899it_int @ ( bit_se2923211474154528505it_int @ ( suc @ N5 ) @ A4 ) @ N5 ) @ ( plus_plus_int @ ( bit_se2923211474154528505it_int @ ( suc @ N5 ) @ A4 ) @ ( bit_se545348938243370406it_int @ ( suc @ N5 ) @ ( uminus_uminus_int @ one_one_int ) ) ) @ ( bit_se2923211474154528505it_int @ ( suc @ N5 ) @ A4 ) ) ) ) ).

% signed_take_bit_code
thf(fact_7438_card__lists__distinct__length__eq,axiom,
    ! [A3: set_Product_unit,K: nat] :
      ( ( finite4290736615968046902t_unit @ A3 )
     => ( ( ord_less_eq_nat @ K @ ( finite410649719033368117t_unit @ A3 ) )
       => ( ( finite3744894192721311803t_unit
            @ ( collec4736972532740828926t_unit
              @ ^ [Xs: list_Product_unit] :
                  ( ( ( size_s245203480648594047t_unit @ Xs )
                    = K )
                  & ( distin4812975378522102150t_unit @ Xs )
                  & ( ord_le3507040750410214029t_unit @ ( set_Product_unit2 @ Xs ) @ A3 ) ) ) )
          = ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite410649719033368117t_unit @ A3 ) @ K ) @ one_one_nat ) @ ( finite410649719033368117t_unit @ A3 ) ) ) ) ) ) ).

% card_lists_distinct_length_eq
thf(fact_7439_card__lists__distinct__length__eq,axiom,
    ! [A3: set_set_nat,K: nat] :
      ( ( finite1152437895449049373et_nat @ A3 )
     => ( ( ord_less_eq_nat @ K @ ( finite_card_set_nat @ A3 ) )
       => ( ( finite5631907774883551598et_nat
            @ ( collect_list_set_nat
              @ ^ [Xs: list_set_nat] :
                  ( ( ( size_s3254054031482475050et_nat @ Xs )
                    = K )
                  & ( distinct_set_nat @ Xs )
                  & ( ord_le6893508408891458716et_nat @ ( set_set_nat2 @ Xs ) @ A3 ) ) ) )
          = ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite_card_set_nat @ A3 ) @ K ) @ one_one_nat ) @ ( finite_card_set_nat @ A3 ) ) ) ) ) ) ).

% card_lists_distinct_length_eq
thf(fact_7440_card__lists__distinct__length__eq,axiom,
    ! [A3: set_list_nat,K: nat] :
      ( ( finite8100373058378681591st_nat @ A3 )
     => ( ( ord_less_eq_nat @ K @ ( finite_card_list_nat @ A3 ) )
       => ( ( finite7325466520557071688st_nat
            @ ( collec5989764272469232197st_nat
              @ ^ [Xs: list_list_nat] :
                  ( ( ( size_s3023201423986296836st_nat @ Xs )
                    = K )
                  & ( distinct_list_nat @ Xs )
                  & ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Xs ) @ A3 ) ) ) )
          = ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite_card_list_nat @ A3 ) @ K ) @ one_one_nat ) @ ( finite_card_list_nat @ A3 ) ) ) ) ) ) ).

% card_lists_distinct_length_eq
thf(fact_7441_card__lists__distinct__length__eq,axiom,
    ! [A3: set_int,K: nat] :
      ( ( finite_finite_int @ A3 )
     => ( ( ord_less_eq_nat @ K @ ( finite_card_int @ A3 ) )
       => ( ( finite_card_list_int
            @ ( collect_list_int
              @ ^ [Xs: list_int] :
                  ( ( ( size_size_list_int @ Xs )
                    = K )
                  & ( distinct_int @ Xs )
                  & ( ord_less_eq_set_int @ ( set_int2 @ Xs ) @ A3 ) ) ) )
          = ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite_card_int @ A3 ) @ K ) @ one_one_nat ) @ ( finite_card_int @ A3 ) ) ) ) ) ) ).

% card_lists_distinct_length_eq
thf(fact_7442_card__lists__distinct__length__eq,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,K: nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( ( ord_less_eq_nat @ K @ ( finite711546835091564841at_nat @ A3 ) )
       => ( ( finite249151656366948015at_nat
            @ ( collec3343600615725829874at_nat
              @ ^ [Xs: list_P6011104703257516679at_nat] :
                  ( ( ( size_s5460976970255530739at_nat @ Xs )
                    = K )
                  & ( distin6923225563576452346at_nat @ Xs )
                  & ( ord_le3146513528884898305at_nat @ ( set_Pr5648618587558075414at_nat @ Xs ) @ A3 ) ) ) )
          = ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite711546835091564841at_nat @ A3 ) @ K ) @ one_one_nat ) @ ( finite711546835091564841at_nat @ A3 ) ) ) ) ) ) ).

% card_lists_distinct_length_eq
thf(fact_7443_card__lists__distinct__length__eq,axiom,
    ! [A3: set_char,K: nat] :
      ( ( finite_finite_char @ A3 )
     => ( ( ord_less_eq_nat @ K @ ( finite_card_char @ A3 ) )
       => ( ( finite1726956870759998265t_char
            @ ( collect_list_char
              @ ^ [Xs: list_char] :
                  ( ( ( size_size_list_char @ Xs )
                    = K )
                  & ( distinct_char @ Xs )
                  & ( ord_less_eq_set_char @ ( set_char2 @ Xs ) @ A3 ) ) ) )
          = ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite_card_char @ A3 ) @ K ) @ one_one_nat ) @ ( finite_card_char @ A3 ) ) ) ) ) ) ).

% card_lists_distinct_length_eq
thf(fact_7444_card__lists__distinct__length__eq,axiom,
    ! [A3: set_nat,K: nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ord_less_eq_nat @ K @ ( finite_card_nat @ A3 ) )
       => ( ( finite_card_list_nat
            @ ( collect_list_nat
              @ ^ [Xs: list_nat] :
                  ( ( ( size_size_list_nat @ Xs )
                    = K )
                  & ( distinct_nat @ Xs )
                  & ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ A3 ) ) ) )
          = ( groups708209901874060359at_nat
            @ ^ [X4: nat] : X4
            @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite_card_nat @ A3 ) @ K ) @ one_one_nat ) @ ( finite_card_nat @ A3 ) ) ) ) ) ) ).

% card_lists_distinct_length_eq
thf(fact_7445_card__lists__distinct__length__eq_H,axiom,
    ! [K: nat,A3: set_int] :
      ( ( ord_less_nat @ K @ ( finite_card_int @ A3 ) )
     => ( ( finite_card_list_int
          @ ( collect_list_int
            @ ^ [Xs: list_int] :
                ( ( ( size_size_list_int @ Xs )
                  = K )
                & ( distinct_int @ Xs )
                & ( ord_less_eq_set_int @ ( set_int2 @ Xs ) @ A3 ) ) ) )
        = ( groups708209901874060359at_nat
          @ ^ [X4: nat] : X4
          @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite_card_int @ A3 ) @ K ) @ one_one_nat ) @ ( finite_card_int @ A3 ) ) ) ) ) ).

% card_lists_distinct_length_eq'
thf(fact_7446_card__lists__distinct__length__eq_H,axiom,
    ! [K: nat,A3: set_Product_unit] :
      ( ( ord_less_nat @ K @ ( finite410649719033368117t_unit @ A3 ) )
     => ( ( finite3744894192721311803t_unit
          @ ( collec4736972532740828926t_unit
            @ ^ [Xs: list_Product_unit] :
                ( ( ( size_s245203480648594047t_unit @ Xs )
                  = K )
                & ( distin4812975378522102150t_unit @ Xs )
                & ( ord_le3507040750410214029t_unit @ ( set_Product_unit2 @ Xs ) @ A3 ) ) ) )
        = ( groups708209901874060359at_nat
          @ ^ [X4: nat] : X4
          @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite410649719033368117t_unit @ A3 ) @ K ) @ one_one_nat ) @ ( finite410649719033368117t_unit @ A3 ) ) ) ) ) ).

% card_lists_distinct_length_eq'
thf(fact_7447_card__lists__distinct__length__eq_H,axiom,
    ! [K: nat,A3: set_set_nat] :
      ( ( ord_less_nat @ K @ ( finite_card_set_nat @ A3 ) )
     => ( ( finite5631907774883551598et_nat
          @ ( collect_list_set_nat
            @ ^ [Xs: list_set_nat] :
                ( ( ( size_s3254054031482475050et_nat @ Xs )
                  = K )
                & ( distinct_set_nat @ Xs )
                & ( ord_le6893508408891458716et_nat @ ( set_set_nat2 @ Xs ) @ A3 ) ) ) )
        = ( groups708209901874060359at_nat
          @ ^ [X4: nat] : X4
          @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite_card_set_nat @ A3 ) @ K ) @ one_one_nat ) @ ( finite_card_set_nat @ A3 ) ) ) ) ) ).

% card_lists_distinct_length_eq'
thf(fact_7448_card__lists__distinct__length__eq_H,axiom,
    ! [K: nat,A3: set_list_nat] :
      ( ( ord_less_nat @ K @ ( finite_card_list_nat @ A3 ) )
     => ( ( finite7325466520557071688st_nat
          @ ( collec5989764272469232197st_nat
            @ ^ [Xs: list_list_nat] :
                ( ( ( size_s3023201423986296836st_nat @ Xs )
                  = K )
                & ( distinct_list_nat @ Xs )
                & ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Xs ) @ A3 ) ) ) )
        = ( groups708209901874060359at_nat
          @ ^ [X4: nat] : X4
          @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite_card_list_nat @ A3 ) @ K ) @ one_one_nat ) @ ( finite_card_list_nat @ A3 ) ) ) ) ) ).

% card_lists_distinct_length_eq'
thf(fact_7449_card__lists__distinct__length__eq_H,axiom,
    ! [K: nat,A3: set_char] :
      ( ( ord_less_nat @ K @ ( finite_card_char @ A3 ) )
     => ( ( finite1726956870759998265t_char
          @ ( collect_list_char
            @ ^ [Xs: list_char] :
                ( ( ( size_size_list_char @ Xs )
                  = K )
                & ( distinct_char @ Xs )
                & ( ord_less_eq_set_char @ ( set_char2 @ Xs ) @ A3 ) ) ) )
        = ( groups708209901874060359at_nat
          @ ^ [X4: nat] : X4
          @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite_card_char @ A3 ) @ K ) @ one_one_nat ) @ ( finite_card_char @ A3 ) ) ) ) ) ).

% card_lists_distinct_length_eq'
thf(fact_7450_card__lists__distinct__length__eq_H,axiom,
    ! [K: nat,A3: set_nat] :
      ( ( ord_less_nat @ K @ ( finite_card_nat @ A3 ) )
     => ( ( finite_card_list_nat
          @ ( collect_list_nat
            @ ^ [Xs: list_nat] :
                ( ( ( size_size_list_nat @ Xs )
                  = K )
                & ( distinct_nat @ Xs )
                & ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ A3 ) ) ) )
        = ( groups708209901874060359at_nat
          @ ^ [X4: nat] : X4
          @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ ( minus_minus_nat @ ( finite_card_nat @ A3 ) @ K ) @ one_one_nat ) @ ( finite_card_nat @ A3 ) ) ) ) ) ).

% card_lists_distinct_length_eq'
thf(fact_7451_apfst__convE,axiom,
    ! [Q2: produc8763457246119570046nteger,F: ( code_integer > option6357759511663192854e_term ) > code_integer > option6357759511663192854e_term,P4: produc8763457246119570046nteger] :
      ( ( Q2
        = ( produc6157546124166486841nteger @ F @ P4 ) )
     => ~ ! [X5: code_integer > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc6137756002093451184nteger @ X5 @ Y4 ) )
           => ( Q2
             != ( produc6137756002093451184nteger @ ( F @ X5 ) @ Y4 ) ) ) ) ).

% apfst_convE
thf(fact_7452_apfst__convE,axiom,
    ! [Q2: produc1908205239877642774nteger,F: ( code_integer > option6357759511663192854e_term ) > produc6241069584506657477e_term > option6357759511663192854e_term,P4: produc8763457246119570046nteger] :
      ( ( Q2
        = ( produc2291436665917485009nteger @ F @ P4 ) )
     => ~ ! [X5: code_integer > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc6137756002093451184nteger @ X5 @ Y4 ) )
           => ( Q2
             != ( produc8603105652947943368nteger @ ( F @ X5 ) @ Y4 ) ) ) ) ).

% apfst_convE
thf(fact_7453_apfst__convE,axiom,
    ! [Q2: produc989692990947075319atural,F: ( produc4972180933644002618e_term > option6357759511663192854e_term ) > produc4972180933644002618e_term > option6357759511663192854e_term,P4: produc989692990947075319atural] :
      ( ( Q2
        = ( produc7227253073565913365atural @ F @ P4 ) )
     => ~ ! [X5: produc4972180933644002618e_term > option6357759511663192854e_term,Y4: produc7822875418678951345atural] :
            ( ( P4
              = ( produc3831813291587773865atural @ X5 @ Y4 ) )
           => ( Q2
             != ( produc3831813291587773865atural @ ( F @ X5 ) @ Y4 ) ) ) ) ).

% apfst_convE
thf(fact_7454_apfst__convE,axiom,
    ! [Q2: produc8763457246119570046nteger,F: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > code_integer > option6357759511663192854e_term,P4: produc1908205239877642774nteger] :
      ( ( Q2
        = ( produc1843087649659261265nteger @ F @ P4 ) )
     => ~ ! [X5: produc6241069584506657477e_term > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc8603105652947943368nteger @ X5 @ Y4 ) )
           => ( Q2
             != ( produc6137756002093451184nteger @ ( F @ X5 ) @ Y4 ) ) ) ) ).

% apfst_convE
thf(fact_7455_apfst__convE,axiom,
    ! [Q2: produc1908205239877642774nteger,F: ( produc6241069584506657477e_term > option6357759511663192854e_term ) > produc6241069584506657477e_term > option6357759511663192854e_term,P4: produc1908205239877642774nteger] :
      ( ( Q2
        = ( produc2515316116081422825nteger @ F @ P4 ) )
     => ~ ! [X5: produc6241069584506657477e_term > option6357759511663192854e_term,Y4: produc8923325533196201883nteger] :
            ( ( P4
              = ( produc8603105652947943368nteger @ X5 @ Y4 ) )
           => ( Q2
             != ( produc8603105652947943368nteger @ ( F @ X5 ) @ Y4 ) ) ) ) ).

% apfst_convE
thf(fact_7456_apfst__convE,axiom,
    ! [Q2: produc2285326912895808259nt_int,F: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > produc8551481072490612790e_term > option6357759511663192854e_term,P4: produc2285326912895808259nt_int] :
      ( ( Q2
        = ( produc7277921532047535397nt_int @ F @ P4 ) )
     => ~ ! [X5: produc8551481072490612790e_term > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc5700946648718959541nt_int @ X5 @ Y4 ) )
           => ( Q2
             != ( produc5700946648718959541nt_int @ ( F @ X5 ) @ Y4 ) ) ) ) ).

% apfst_convE
thf(fact_7457_apfst__convE,axiom,
    ! [Q2: produc7773217078559923341nt_int,F: ( produc8551481072490612790e_term > option6357759511663192854e_term ) > int > option6357759511663192854e_term,P4: produc2285326912895808259nt_int] :
      ( ( Q2
        = ( produc6919319362177967663nt_int @ F @ P4 ) )
     => ~ ! [X5: produc8551481072490612790e_term > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc5700946648718959541nt_int @ X5 @ Y4 ) )
           => ( Q2
             != ( produc4305682042979456191nt_int @ ( F @ X5 ) @ Y4 ) ) ) ) ).

% apfst_convE
thf(fact_7458_apfst__convE,axiom,
    ! [Q2: produc2285326912895808259nt_int,F: ( int > option6357759511663192854e_term ) > produc8551481072490612790e_term > option6357759511663192854e_term,P4: produc7773217078559923341nt_int] :
      ( ( Q2
        = ( produc6067946493426971951nt_int @ F @ P4 ) )
     => ~ ! [X5: int > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc4305682042979456191nt_int @ X5 @ Y4 ) )
           => ( Q2
             != ( produc5700946648718959541nt_int @ ( F @ X5 ) @ Y4 ) ) ) ) ).

% apfst_convE
thf(fact_7459_apfst__convE,axiom,
    ! [Q2: produc7773217078559923341nt_int,F: ( int > option6357759511663192854e_term ) > int > option6357759511663192854e_term,P4: produc7773217078559923341nt_int] :
      ( ( Q2
        = ( produc7131893314732144953nt_int @ F @ P4 ) )
     => ~ ! [X5: int > option6357759511663192854e_term,Y4: product_prod_int_int] :
            ( ( P4
              = ( produc4305682042979456191nt_int @ X5 @ Y4 ) )
           => ( Q2
             != ( produc4305682042979456191nt_int @ ( F @ X5 ) @ Y4 ) ) ) ) ).

% apfst_convE
thf(fact_7460_times__int_Oabs__eq,axiom,
    ! [Xa: product_prod_nat_nat,X: product_prod_nat_nat] :
      ( ( times_times_int @ ( abs_Integ @ Xa ) @ ( abs_Integ @ X ) )
      = ( abs_Integ
        @ ( produc27273713700761075at_nat
          @ ^ [X4: nat,Y: nat] :
              ( produc2626176000494625587at_nat
              @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X4 @ U2 ) @ ( times_times_nat @ Y @ V5 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X4 @ V5 ) @ ( times_times_nat @ Y @ U2 ) ) ) )
          @ Xa
          @ X ) ) ) ).

% times_int.abs_eq
thf(fact_7461_rat__minus__code,axiom,
    ! [P4: rat,Q2: rat] :
      ( ( quotient_of @ ( minus_minus_rat @ P4 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int,C3: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B4: int,D2: int] : ( normalize @ ( product_Pair_int_int @ ( minus_minus_int @ ( times_times_int @ A4 @ D2 ) @ ( times_times_int @ B4 @ C3 ) ) @ ( times_times_int @ C3 @ D2 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P4 ) ) ) ).

% rat_minus_code
thf(fact_7462_rat__one__code,axiom,
    ( ( quotient_of @ one_one_rat )
    = ( product_Pair_int_int @ one_one_int @ one_one_int ) ) ).

% rat_one_code
thf(fact_7463_rat__zero__code,axiom,
    ( ( quotient_of @ zero_zero_rat )
    = ( product_Pair_int_int @ zero_zero_int @ one_one_int ) ) ).

% rat_zero_code
thf(fact_7464_quotient__of__number_I3_J,axiom,
    ! [K: num] :
      ( ( quotient_of @ ( numeral_numeral_rat @ K ) )
      = ( product_Pair_int_int @ ( numeral_numeral_int @ K ) @ one_one_int ) ) ).

% quotient_of_number(3)
thf(fact_7465_quotient__of__number_I4_J,axiom,
    ( ( quotient_of @ ( uminus_uminus_rat @ one_one_rat ) )
    = ( product_Pair_int_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int ) ) ).

% quotient_of_number(4)
thf(fact_7466_quotient__of__number_I5_J,axiom,
    ! [K: num] :
      ( ( quotient_of @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ K ) ) )
      = ( product_Pair_int_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) @ one_one_int ) ) ).

% quotient_of_number(5)
thf(fact_7467_finite__lists__distinct__length__eq,axiom,
    ! [A3: set_int,N: nat] :
      ( ( finite_finite_int @ A3 )
     => ( finite3922522038869484883st_int
        @ ( collect_list_int
          @ ^ [Xs: list_int] :
              ( ( ( size_size_list_int @ Xs )
                = N )
              & ( distinct_int @ Xs )
              & ( ord_less_eq_set_int @ ( set_int2 @ Xs ) @ A3 ) ) ) ) ) ).

% finite_lists_distinct_length_eq
thf(fact_7468_finite__lists__distinct__length__eq,axiom,
    ! [A3: set_Pr1261947904930325089at_nat,N: nat] :
      ( ( finite6177210948735845034at_nat @ A3 )
     => ( finite500796754983035824at_nat
        @ ( collec3343600615725829874at_nat
          @ ^ [Xs: list_P6011104703257516679at_nat] :
              ( ( ( size_s5460976970255530739at_nat @ Xs )
                = N )
              & ( distin6923225563576452346at_nat @ Xs )
              & ( ord_le3146513528884898305at_nat @ ( set_Pr5648618587558075414at_nat @ Xs ) @ A3 ) ) ) ) ) ).

% finite_lists_distinct_length_eq
thf(fact_7469_finite__lists__distinct__length__eq,axiom,
    ! [A3: set_char,N: nat] :
      ( ( finite_finite_char @ A3 )
     => ( finite3619747586194699384t_char
        @ ( collect_list_char
          @ ^ [Xs: list_char] :
              ( ( ( size_size_list_char @ Xs )
                = N )
              & ( distinct_char @ Xs )
              & ( ord_less_eq_set_char @ ( set_char2 @ Xs ) @ A3 ) ) ) ) ) ).

% finite_lists_distinct_length_eq
thf(fact_7470_finite__lists__distinct__length__eq,axiom,
    ! [A3: set_nat,N: nat] :
      ( ( finite_finite_nat @ A3 )
     => ( finite8100373058378681591st_nat
        @ ( collect_list_nat
          @ ^ [Xs: list_nat] :
              ( ( ( size_size_list_nat @ Xs )
                = N )
              & ( distinct_nat @ Xs )
              & ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ A3 ) ) ) ) ) ).

% finite_lists_distinct_length_eq
thf(fact_7471_int_Oabs__induct,axiom,
    ! [P: int > $o,X: int] :
      ( ! [Y4: product_prod_nat_nat] : ( P @ ( abs_Integ @ Y4 ) )
     => ( P @ X ) ) ).

% int.abs_induct
thf(fact_7472_quotient__of__div,axiom,
    ! [R: rat,N: int,D: int] :
      ( ( ( quotient_of @ R )
        = ( product_Pair_int_int @ N @ D ) )
     => ( R
        = ( divide_divide_rat @ ( ring_1_of_int_rat @ N ) @ ( ring_1_of_int_rat @ D ) ) ) ) ).

% quotient_of_div
thf(fact_7473_eq__Abs__Integ,axiom,
    ! [Z: int] :
      ~ ! [X5: nat,Y4: nat] :
          ( Z
         != ( abs_Integ @ ( product_Pair_nat_nat @ X5 @ Y4 ) ) ) ).

% eq_Abs_Integ
thf(fact_7474_nat_Oabs__eq,axiom,
    ! [X: product_prod_nat_nat] :
      ( ( nat2 @ ( abs_Integ @ X ) )
      = ( produc6842872674320459806at_nat @ minus_minus_nat @ X ) ) ).

% nat.abs_eq
thf(fact_7475_quotient__of__denom__pos,axiom,
    ! [R: rat,P4: int,Q2: int] :
      ( ( ( quotient_of @ R )
        = ( product_Pair_int_int @ P4 @ Q2 ) )
     => ( ord_less_int @ zero_zero_int @ Q2 ) ) ).

% quotient_of_denom_pos
thf(fact_7476_zero__int__def,axiom,
    ( zero_zero_int
    = ( abs_Integ @ ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) ) ) ).

% zero_int_def
thf(fact_7477_int__def,axiom,
    ( semiri1314217659103216013at_int
    = ( ^ [N5: nat] : ( abs_Integ @ ( product_Pair_nat_nat @ N5 @ zero_zero_nat ) ) ) ) ).

% int_def
thf(fact_7478_rat__floor__code,axiom,
    ( archim3151403230148437115or_rat
    = ( ^ [P5: rat] : ( produc8211389475949308722nt_int @ divide_divide_int @ ( quotient_of @ P5 ) ) ) ) ).

% rat_floor_code
thf(fact_7479_rat__uminus__code,axiom,
    ! [P4: rat] :
      ( ( quotient_of @ ( uminus_uminus_rat @ P4 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int] : ( product_Pair_int_int @ ( uminus_uminus_int @ A4 ) )
        @ ( quotient_of @ P4 ) ) ) ).

% rat_uminus_code
thf(fact_7480_rat__abs__code,axiom,
    ! [P4: rat] :
      ( ( quotient_of @ ( abs_abs_rat @ P4 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int] : ( product_Pair_int_int @ ( abs_abs_int @ A4 ) )
        @ ( quotient_of @ P4 ) ) ) ).

% rat_abs_code
thf(fact_7481_rat__less__eq__code,axiom,
    ( ord_less_eq_rat
    = ( ^ [P5: rat,Q4: rat] :
          ( produc4947309494688390418_int_o
          @ ^ [A4: int,C3: int] :
              ( produc4947309494688390418_int_o
              @ ^ [B4: int,D2: int] : ( ord_less_eq_int @ ( times_times_int @ A4 @ D2 ) @ ( times_times_int @ C3 @ B4 ) )
              @ ( quotient_of @ Q4 ) )
          @ ( quotient_of @ P5 ) ) ) ) ).

% rat_less_eq_code
thf(fact_7482_rat__less__code,axiom,
    ( ord_less_rat
    = ( ^ [P5: rat,Q4: rat] :
          ( produc4947309494688390418_int_o
          @ ^ [A4: int,C3: int] :
              ( produc4947309494688390418_int_o
              @ ^ [B4: int,D2: int] : ( ord_less_int @ ( times_times_int @ A4 @ D2 ) @ ( times_times_int @ C3 @ B4 ) )
              @ ( quotient_of @ Q4 ) )
          @ ( quotient_of @ P5 ) ) ) ) ).

% rat_less_code
thf(fact_7483_uminus__int_Oabs__eq,axiom,
    ! [X: product_prod_nat_nat] :
      ( ( uminus_uminus_int @ ( abs_Integ @ X ) )
      = ( abs_Integ
        @ ( produc2626176000494625587at_nat
          @ ^ [X4: nat,Y: nat] : ( product_Pair_nat_nat @ Y @ X4 )
          @ X ) ) ) ).

% uminus_int.abs_eq
thf(fact_7484_rat__sgn__code,axiom,
    ! [P4: rat] :
      ( ( quotient_of @ ( sgn_sgn_rat @ P4 ) )
      = ( product_Pair_int_int @ ( sgn_sgn_int @ ( product_fst_int_int @ ( quotient_of @ P4 ) ) ) @ one_one_int ) ) ).

% rat_sgn_code
thf(fact_7485_one__int__def,axiom,
    ( one_one_int
    = ( abs_Integ @ ( product_Pair_nat_nat @ one_one_nat @ zero_zero_nat ) ) ) ).

% one_int_def
thf(fact_7486_of__int_Oabs__eq,axiom,
    ! [X: product_prod_nat_nat] :
      ( ( ring_18347121197199848620nteger @ ( abs_Integ @ X ) )
      = ( produc1830744345554046123nteger
        @ ^ [I2: nat,J3: nat] : ( minus_8373710615458151222nteger @ ( semiri4939895301339042750nteger @ I2 ) @ ( semiri4939895301339042750nteger @ J3 ) )
        @ X ) ) ).

% of_int.abs_eq
thf(fact_7487_of__int_Oabs__eq,axiom,
    ! [X: product_prod_nat_nat] :
      ( ( ring_1_of_int_rat @ ( abs_Integ @ X ) )
      = ( produc6207742614233964070at_rat
        @ ^ [I2: nat,J3: nat] : ( minus_minus_rat @ ( semiri681578069525770553at_rat @ I2 ) @ ( semiri681578069525770553at_rat @ J3 ) )
        @ X ) ) ).

% of_int.abs_eq
thf(fact_7488_of__int_Oabs__eq,axiom,
    ! [X: product_prod_nat_nat] :
      ( ( ring_1_of_int_int @ ( abs_Integ @ X ) )
      = ( produc6840382203811409530at_int
        @ ^ [I2: nat,J3: nat] : ( minus_minus_int @ ( semiri1314217659103216013at_int @ I2 ) @ ( semiri1314217659103216013at_int @ J3 ) )
        @ X ) ) ).

% of_int.abs_eq
thf(fact_7489_less__int_Oabs__eq,axiom,
    ! [Xa: product_prod_nat_nat,X: product_prod_nat_nat] :
      ( ( ord_less_int @ ( abs_Integ @ Xa ) @ ( abs_Integ @ X ) )
      = ( produc8739625826339149834_nat_o
        @ ^ [X4: nat,Y: nat] :
            ( produc6081775807080527818_nat_o
            @ ^ [U2: nat,V5: nat] : ( ord_less_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ U2 @ Y ) ) )
        @ Xa
        @ X ) ) ).

% less_int.abs_eq
thf(fact_7490_less__eq__int_Oabs__eq,axiom,
    ! [Xa: product_prod_nat_nat,X: product_prod_nat_nat] :
      ( ( ord_less_eq_int @ ( abs_Integ @ Xa ) @ ( abs_Integ @ X ) )
      = ( produc8739625826339149834_nat_o
        @ ^ [X4: nat,Y: nat] :
            ( produc6081775807080527818_nat_o
            @ ^ [U2: nat,V5: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ U2 @ Y ) ) )
        @ Xa
        @ X ) ) ).

% less_eq_int.abs_eq
thf(fact_7491_plus__int_Oabs__eq,axiom,
    ! [Xa: product_prod_nat_nat,X: product_prod_nat_nat] :
      ( ( plus_plus_int @ ( abs_Integ @ Xa ) @ ( abs_Integ @ X ) )
      = ( abs_Integ
        @ ( produc27273713700761075at_nat
          @ ^ [X4: nat,Y: nat] :
              ( produc2626176000494625587at_nat
              @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ U2 ) @ ( plus_plus_nat @ Y @ V5 ) ) )
          @ Xa
          @ X ) ) ) ).

% plus_int.abs_eq
thf(fact_7492_rat__times__code,axiom,
    ! [P4: rat,Q2: rat] :
      ( ( quotient_of @ ( times_times_rat @ P4 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int,C3: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B4: int,D2: int] : ( normalize @ ( product_Pair_int_int @ ( times_times_int @ A4 @ B4 ) @ ( times_times_int @ C3 @ D2 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P4 ) ) ) ).

% rat_times_code
thf(fact_7493_rat__divide__code,axiom,
    ! [P4: rat,Q2: rat] :
      ( ( quotient_of @ ( divide_divide_rat @ P4 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int,C3: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B4: int,D2: int] : ( normalize @ ( product_Pair_int_int @ ( times_times_int @ A4 @ D2 ) @ ( times_times_int @ C3 @ B4 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P4 ) ) ) ).

% rat_divide_code
thf(fact_7494_minus__int_Oabs__eq,axiom,
    ! [Xa: product_prod_nat_nat,X: product_prod_nat_nat] :
      ( ( minus_minus_int @ ( abs_Integ @ Xa ) @ ( abs_Integ @ X ) )
      = ( abs_Integ
        @ ( produc27273713700761075at_nat
          @ ^ [X4: nat,Y: nat] :
              ( produc2626176000494625587at_nat
              @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ Y @ U2 ) ) )
          @ Xa
          @ X ) ) ) ).

% minus_int.abs_eq
thf(fact_7495_rat__plus__code,axiom,
    ! [P4: rat,Q2: rat] :
      ( ( quotient_of @ ( plus_plus_rat @ P4 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int,C3: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B4: int,D2: int] : ( normalize @ ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ A4 @ D2 ) @ ( times_times_int @ B4 @ C3 ) ) @ ( times_times_int @ C3 @ D2 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P4 ) ) ) ).

% rat_plus_code
thf(fact_7496_quotient__of__int,axiom,
    ! [A: int] :
      ( ( quotient_of @ ( of_int @ A ) )
      = ( product_Pair_int_int @ A @ one_one_int ) ) ).

% quotient_of_int
thf(fact_7497_rat__inverse__code,axiom,
    ! [P4: rat] :
      ( ( quotient_of @ ( inverse_inverse_rat @ P4 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A4: int,B4: int] : ( if_Pro3027730157355071871nt_int @ ( A4 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ ( times_times_int @ ( sgn_sgn_int @ A4 ) @ B4 ) @ ( abs_abs_int @ A4 ) ) )
        @ ( quotient_of @ P4 ) ) ) ).

% rat_inverse_code
thf(fact_7498_numeral__xor__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se2046307713759805098atural @ ( numera5444537566228673987atural @ M ) @ ( numera5444537566228673987atural @ N ) )
      = ( case_o5621594795226839503al_num @ zero_z2226904508553997617atural @ numera5444537566228673987atural @ ( bit_un2480387367778600638or_num @ M @ N ) ) ) ).

% numeral_xor_num
thf(fact_7499_numeral__xor__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se3222712562003087583nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ N ) )
      = ( case_o356765784539232260er_num @ zero_z3403309356797280102nteger @ numera6620942414471956472nteger @ ( bit_un2480387367778600638or_num @ M @ N ) ) ) ).

% numeral_xor_num
thf(fact_7500_numeral__xor__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se6526347334894502574or_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_un2480387367778600638or_num @ M @ N ) ) ) ).

% numeral_xor_num
thf(fact_7501_numeral__xor__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( case_option_nat_num @ zero_zero_nat @ numeral_numeral_nat @ ( bit_un2480387367778600638or_num @ M @ N ) ) ) ).

% numeral_xor_num
thf(fact_7502_diff__numeral__special_I8_J,axiom,
    ! [M: num] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( neg_numeral_sub_int @ one @ M ) ) ).

% diff_numeral_special(8)
thf(fact_7503_diff__numeral__special_I8_J,axiom,
    ! [M: num] :
      ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( neg_nu5755505904847501662nteger @ one @ M ) ) ).

% diff_numeral_special(8)
thf(fact_7504_diff__numeral__special_I8_J,axiom,
    ! [M: num] :
      ( ( minus_minus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( neg_numeral_sub_rat @ one @ M ) ) ).

% diff_numeral_special(8)
thf(fact_7505_diff__numeral__special_I7_J,axiom,
    ! [N: num] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( neg_numeral_sub_int @ N @ one ) ) ).

% diff_numeral_special(7)
thf(fact_7506_diff__numeral__special_I7_J,axiom,
    ! [N: num] :
      ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( neg_nu5755505904847501662nteger @ N @ one ) ) ).

% diff_numeral_special(7)
thf(fact_7507_diff__numeral__special_I7_J,axiom,
    ! [N: num] :
      ( ( minus_minus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( neg_numeral_sub_rat @ N @ one ) ) ).

% diff_numeral_special(7)
thf(fact_7508_inverse__zero,axiom,
    ( ( inverse_inverse_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% inverse_zero
thf(fact_7509_inverse__nonzero__iff__nonzero,axiom,
    ! [A: rat] :
      ( ( ( inverse_inverse_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% inverse_nonzero_iff_nonzero
thf(fact_7510_inverse__eq__1__iff,axiom,
    ! [X: rat] :
      ( ( ( inverse_inverse_rat @ X )
        = one_one_rat )
      = ( X = one_one_rat ) ) ).

% inverse_eq_1_iff
thf(fact_7511_inverse__1,axiom,
    ( ( inverse_inverse_rat @ one_one_rat )
    = one_one_rat ) ).

% inverse_1
thf(fact_7512_inverse__nonnegative__iff__nonnegative,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( inverse_inverse_rat @ A ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% inverse_nonnegative_iff_nonnegative
thf(fact_7513_inverse__nonpositive__iff__nonpositive,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( inverse_inverse_rat @ A ) @ zero_zero_rat )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% inverse_nonpositive_iff_nonpositive
thf(fact_7514_inverse__less__iff__less,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ zero_zero_rat @ B )
       => ( ( ord_less_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
          = ( ord_less_rat @ B @ A ) ) ) ) ).

% inverse_less_iff_less
thf(fact_7515_inverse__less__iff__less__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ( ord_less_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
          = ( ord_less_rat @ B @ A ) ) ) ) ).

% inverse_less_iff_less_neg
thf(fact_7516_inverse__negative__iff__negative,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( inverse_inverse_rat @ A ) @ zero_zero_rat )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% inverse_negative_iff_negative
thf(fact_7517_inverse__positive__iff__positive,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( inverse_inverse_rat @ A ) )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% inverse_positive_iff_positive
thf(fact_7518_sub__num__simps_I1_J,axiom,
    ( ( neg_nu5755505904847501662nteger @ one @ one )
    = zero_z3403309356797280102nteger ) ).

% sub_num_simps(1)
thf(fact_7519_sub__num__simps_I1_J,axiom,
    ( ( neg_numeral_sub_rat @ one @ one )
    = zero_zero_rat ) ).

% sub_num_simps(1)
thf(fact_7520_sub__num__simps_I1_J,axiom,
    ( ( neg_numeral_sub_int @ one @ one )
    = zero_zero_int ) ).

% sub_num_simps(1)
thf(fact_7521_inverse__le__iff__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ zero_zero_rat @ B )
       => ( ( ord_less_eq_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
          = ( ord_less_eq_rat @ B @ A ) ) ) ) ).

% inverse_le_iff_le
thf(fact_7522_inverse__le__iff__le__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ( ord_less_eq_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
          = ( ord_less_eq_rat @ B @ A ) ) ) ) ).

% inverse_le_iff_le_neg
thf(fact_7523_left__inverse,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( times_times_rat @ ( inverse_inverse_rat @ A ) @ A )
        = one_one_rat ) ) ).

% left_inverse
thf(fact_7524_right__inverse,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( times_times_rat @ A @ ( inverse_inverse_rat @ A ) )
        = one_one_rat ) ) ).

% right_inverse
thf(fact_7525_inverse__eq__divide__numeral,axiom,
    ! [W: num] :
      ( ( inverse_inverse_rat @ ( numeral_numeral_rat @ W ) )
      = ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ W ) ) ) ).

% inverse_eq_divide_numeral
thf(fact_7526_add__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( neg_numeral_sub_int @ M @ N ) ) ).

% add_neg_numeral_simps(1)
thf(fact_7527_add__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( neg_nu5755505904847501662nteger @ M @ N ) ) ).

% add_neg_numeral_simps(1)
thf(fact_7528_add__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( neg_numeral_sub_rat @ M @ N ) ) ).

% add_neg_numeral_simps(1)
thf(fact_7529_add__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( neg_numeral_sub_int @ N @ M ) ) ).

% add_neg_numeral_simps(2)
thf(fact_7530_add__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( numera6620942414471956472nteger @ N ) )
      = ( neg_nu5755505904847501662nteger @ N @ M ) ) ).

% add_neg_numeral_simps(2)
thf(fact_7531_add__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( numeral_numeral_rat @ N ) )
      = ( neg_numeral_sub_rat @ N @ M ) ) ).

% add_neg_numeral_simps(2)
thf(fact_7532_semiring__norm_I167_J,axiom,
    ! [V: num,W: num,Y3: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( plus_plus_int @ ( numeral_numeral_int @ W ) @ Y3 ) )
      = ( plus_plus_int @ ( neg_numeral_sub_int @ W @ V ) @ Y3 ) ) ).

% semiring_norm(167)
thf(fact_7533_semiring__norm_I167_J,axiom,
    ! [V: num,W: num,Y3: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ V ) ) @ ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ W ) @ Y3 ) )
      = ( plus_p5714425477246183910nteger @ ( neg_nu5755505904847501662nteger @ W @ V ) @ Y3 ) ) ).

% semiring_norm(167)
thf(fact_7534_semiring__norm_I167_J,axiom,
    ! [V: num,W: num,Y3: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ ( plus_plus_rat @ ( numeral_numeral_rat @ W ) @ Y3 ) )
      = ( plus_plus_rat @ ( neg_numeral_sub_rat @ W @ V ) @ Y3 ) ) ).

% semiring_norm(167)
thf(fact_7535_semiring__norm_I166_J,axiom,
    ! [V: num,W: num,Y3: int] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ V ) @ ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ W ) ) @ Y3 ) )
      = ( plus_plus_int @ ( neg_numeral_sub_int @ V @ W ) @ Y3 ) ) ).

% semiring_norm(166)
thf(fact_7536_semiring__norm_I166_J,axiom,
    ! [V: num,W: num,Y3: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ V ) @ ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ W ) ) @ Y3 ) )
      = ( plus_p5714425477246183910nteger @ ( neg_nu5755505904847501662nteger @ V @ W ) @ Y3 ) ) ).

% semiring_norm(166)
thf(fact_7537_semiring__norm_I166_J,axiom,
    ! [V: num,W: num,Y3: rat] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ V ) @ ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) @ Y3 ) )
      = ( plus_plus_rat @ ( neg_numeral_sub_rat @ V @ W ) @ Y3 ) ) ).

% semiring_norm(166)
thf(fact_7538_inverse__eq__divide__neg__numeral,axiom,
    ! [W: num] :
      ( ( inverse_inverse_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) )
      = ( divide_divide_rat @ one_one_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W ) ) ) ) ).

% inverse_eq_divide_neg_numeral
thf(fact_7539_diff__numeral__special_I2_J,axiom,
    ! [M: num] :
      ( ( minus_minus_int @ ( numeral_numeral_int @ M ) @ one_one_int )
      = ( neg_numeral_sub_int @ M @ one ) ) ).

% diff_numeral_special(2)
thf(fact_7540_diff__numeral__special_I2_J,axiom,
    ! [M: num] :
      ( ( minus_8373710615458151222nteger @ ( numera6620942414471956472nteger @ M ) @ one_one_Code_integer )
      = ( neg_nu5755505904847501662nteger @ M @ one ) ) ).

% diff_numeral_special(2)
thf(fact_7541_diff__numeral__special_I2_J,axiom,
    ! [M: num] :
      ( ( minus_minus_rat @ ( numeral_numeral_rat @ M ) @ one_one_rat )
      = ( neg_numeral_sub_rat @ M @ one ) ) ).

% diff_numeral_special(2)
thf(fact_7542_diff__numeral__special_I1_J,axiom,
    ! [N: num] :
      ( ( minus_minus_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( neg_numeral_sub_int @ one @ N ) ) ).

% diff_numeral_special(1)
thf(fact_7543_diff__numeral__special_I1_J,axiom,
    ! [N: num] :
      ( ( minus_8373710615458151222nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ N ) )
      = ( neg_nu5755505904847501662nteger @ one @ N ) ) ).

% diff_numeral_special(1)
thf(fact_7544_diff__numeral__special_I1_J,axiom,
    ! [N: num] :
      ( ( minus_minus_rat @ one_one_rat @ ( numeral_numeral_rat @ N ) )
      = ( neg_numeral_sub_rat @ one @ N ) ) ).

% diff_numeral_special(1)
thf(fact_7545_add__neg__numeral__special_I1_J,axiom,
    ! [M: num] :
      ( ( plus_plus_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) )
      = ( neg_numeral_sub_int @ one @ M ) ) ).

% add_neg_numeral_special(1)
thf(fact_7546_add__neg__numeral__special_I1_J,axiom,
    ! [M: num] :
      ( ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) )
      = ( neg_nu5755505904847501662nteger @ one @ M ) ) ).

% add_neg_numeral_special(1)
thf(fact_7547_add__neg__numeral__special_I1_J,axiom,
    ! [M: num] :
      ( ( plus_plus_rat @ one_one_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) )
      = ( neg_numeral_sub_rat @ one @ M ) ) ).

% add_neg_numeral_special(1)
thf(fact_7548_add__neg__numeral__special_I2_J,axiom,
    ! [M: num] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int )
      = ( neg_numeral_sub_int @ one @ M ) ) ).

% add_neg_numeral_special(2)
thf(fact_7549_add__neg__numeral__special_I2_J,axiom,
    ! [M: num] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ one_one_Code_integer )
      = ( neg_nu5755505904847501662nteger @ one @ M ) ) ).

% add_neg_numeral_special(2)
thf(fact_7550_add__neg__numeral__special_I2_J,axiom,
    ! [M: num] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ one_one_rat )
      = ( neg_numeral_sub_rat @ one @ M ) ) ).

% add_neg_numeral_special(2)
thf(fact_7551_add__neg__numeral__special_I3_J,axiom,
    ! [M: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( neg_numeral_sub_int @ M @ one ) ) ).

% add_neg_numeral_special(3)
thf(fact_7552_add__neg__numeral__special_I3_J,axiom,
    ! [M: num] :
      ( ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( neg_nu5755505904847501662nteger @ M @ one ) ) ).

% add_neg_numeral_special(3)
thf(fact_7553_add__neg__numeral__special_I3_J,axiom,
    ! [M: num] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( neg_numeral_sub_rat @ M @ one ) ) ).

% add_neg_numeral_special(3)
thf(fact_7554_add__neg__numeral__special_I4_J,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ N ) )
      = ( neg_numeral_sub_int @ N @ one ) ) ).

% add_neg_numeral_special(4)
thf(fact_7555_add__neg__numeral__special_I4_J,axiom,
    ! [N: num] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ N ) )
      = ( neg_nu5755505904847501662nteger @ N @ one ) ) ).

% add_neg_numeral_special(4)
thf(fact_7556_add__neg__numeral__special_I4_J,axiom,
    ! [N: num] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( numeral_numeral_rat @ N ) )
      = ( neg_numeral_sub_rat @ N @ one ) ) ).

% add_neg_numeral_special(4)
thf(fact_7557_minus__sub__one__diff__one,axiom,
    ! [M: num] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ ( neg_numeral_sub_int @ M @ one ) ) @ one_one_int )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) ) ).

% minus_sub_one_diff_one
thf(fact_7558_minus__sub__one__diff__one,axiom,
    ! [M: num] :
      ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ ( neg_nu5755505904847501662nteger @ M @ one ) ) @ one_one_Code_integer )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) ) ).

% minus_sub_one_diff_one
thf(fact_7559_minus__sub__one__diff__one,axiom,
    ! [M: num] :
      ( ( minus_minus_rat @ ( uminus_uminus_rat @ ( neg_numeral_sub_rat @ M @ one ) ) @ one_one_rat )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) ) ).

% minus_sub_one_diff_one
thf(fact_7560_nonzero__imp__inverse__nonzero,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( inverse_inverse_rat @ A )
       != zero_zero_rat ) ) ).

% nonzero_imp_inverse_nonzero
thf(fact_7561_nonzero__inverse__inverse__eq,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( inverse_inverse_rat @ ( inverse_inverse_rat @ A ) )
        = A ) ) ).

% nonzero_inverse_inverse_eq
thf(fact_7562_nonzero__inverse__eq__imp__eq,axiom,
    ! [A: rat,B: rat] :
      ( ( ( inverse_inverse_rat @ A )
        = ( inverse_inverse_rat @ B ) )
     => ( ( A != zero_zero_rat )
       => ( ( B != zero_zero_rat )
         => ( A = B ) ) ) ) ).

% nonzero_inverse_eq_imp_eq
thf(fact_7563_inverse__zero__imp__zero,axiom,
    ! [A: rat] :
      ( ( ( inverse_inverse_rat @ A )
        = zero_zero_rat )
     => ( A = zero_zero_rat ) ) ).

% inverse_zero_imp_zero
thf(fact_7564_field__class_Ofield__inverse__zero,axiom,
    ( ( inverse_inverse_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% field_class.field_inverse_zero
thf(fact_7565_inverse__less__imp__less,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ord_less_rat @ B @ A ) ) ) ).

% inverse_less_imp_less
thf(fact_7566_less__imp__inverse__less,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ord_less_rat @ ( inverse_inverse_rat @ B ) @ ( inverse_inverse_rat @ A ) ) ) ) ).

% less_imp_inverse_less
thf(fact_7567_inverse__less__imp__less__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ B @ A ) ) ) ).

% inverse_less_imp_less_neg
thf(fact_7568_less__imp__inverse__less__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( inverse_inverse_rat @ B ) @ ( inverse_inverse_rat @ A ) ) ) ) ).

% less_imp_inverse_less_neg
thf(fact_7569_inverse__negative__imp__negative,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( inverse_inverse_rat @ A ) @ zero_zero_rat )
     => ( ( A != zero_zero_rat )
       => ( ord_less_rat @ A @ zero_zero_rat ) ) ) ).

% inverse_negative_imp_negative
thf(fact_7570_inverse__positive__imp__positive,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( inverse_inverse_rat @ A ) )
     => ( ( A != zero_zero_rat )
       => ( ord_less_rat @ zero_zero_rat @ A ) ) ) ).

% inverse_positive_imp_positive
thf(fact_7571_negative__imp__inverse__negative,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ord_less_rat @ ( inverse_inverse_rat @ A ) @ zero_zero_rat ) ) ).

% negative_imp_inverse_negative
thf(fact_7572_positive__imp__inverse__positive,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ord_less_rat @ zero_zero_rat @ ( inverse_inverse_rat @ A ) ) ) ).

% positive_imp_inverse_positive
thf(fact_7573_nonzero__inverse__mult__distrib,axiom,
    ! [A: rat,B: rat] :
      ( ( A != zero_zero_rat )
     => ( ( B != zero_zero_rat )
       => ( ( inverse_inverse_rat @ ( times_times_rat @ A @ B ) )
          = ( times_times_rat @ ( inverse_inverse_rat @ B ) @ ( inverse_inverse_rat @ A ) ) ) ) ) ).

% nonzero_inverse_mult_distrib
thf(fact_7574_nonzero__inverse__minus__eq,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( inverse_inverse_rat @ ( uminus_uminus_rat @ A ) )
        = ( uminus_uminus_rat @ ( inverse_inverse_rat @ A ) ) ) ) ).

% nonzero_inverse_minus_eq
thf(fact_7575_inverse__unique,axiom,
    ! [A: rat,B: rat] :
      ( ( ( times_times_rat @ A @ B )
        = one_one_rat )
     => ( ( inverse_inverse_rat @ A )
        = B ) ) ).

% inverse_unique
thf(fact_7576_inverse__eq__divide,axiom,
    ( inverse_inverse_rat
    = ( divide_divide_rat @ one_one_rat ) ) ).

% inverse_eq_divide
thf(fact_7577_power__mult__power__inverse__commute,axiom,
    ! [X: rat,M: nat,N: nat] :
      ( ( times_times_rat @ ( power_power_rat @ X @ M ) @ ( power_power_rat @ ( inverse_inverse_rat @ X ) @ N ) )
      = ( times_times_rat @ ( power_power_rat @ ( inverse_inverse_rat @ X ) @ N ) @ ( power_power_rat @ X @ M ) ) ) ).

% power_mult_power_inverse_commute
thf(fact_7578_power__mult__inverse__distrib,axiom,
    ! [X: rat,M: nat] :
      ( ( times_times_rat @ ( power_power_rat @ X @ M ) @ ( inverse_inverse_rat @ X ) )
      = ( times_times_rat @ ( inverse_inverse_rat @ X ) @ ( power_power_rat @ X @ M ) ) ) ).

% power_mult_inverse_distrib
thf(fact_7579_nonzero__abs__inverse,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( abs_abs_rat @ ( inverse_inverse_rat @ A ) )
        = ( inverse_inverse_rat @ ( abs_abs_rat @ A ) ) ) ) ).

% nonzero_abs_inverse
thf(fact_7580_mult__inverse__of__int__commute,axiom,
    ! [Xa: int,X: rat] :
      ( ( times_times_rat @ ( inverse_inverse_rat @ ( ring_1_of_int_rat @ Xa ) ) @ X )
      = ( times_times_rat @ X @ ( inverse_inverse_rat @ ( ring_1_of_int_rat @ Xa ) ) ) ) ).

% mult_inverse_of_int_commute
thf(fact_7581_inverse__le__imp__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ord_less_eq_rat @ B @ A ) ) ) ).

% inverse_le_imp_le
thf(fact_7582_le__imp__inverse__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ord_less_eq_rat @ ( inverse_inverse_rat @ B ) @ ( inverse_inverse_rat @ A ) ) ) ) ).

% le_imp_inverse_le
thf(fact_7583_inverse__le__imp__le__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_eq_rat @ B @ A ) ) ) ).

% inverse_le_imp_le_neg
thf(fact_7584_le__imp__inverse__le__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( inverse_inverse_rat @ B ) @ ( inverse_inverse_rat @ A ) ) ) ) ).

% le_imp_inverse_le_neg
thf(fact_7585_inverse__le__1__iff,axiom,
    ! [X: rat] :
      ( ( ord_less_eq_rat @ ( inverse_inverse_rat @ X ) @ one_one_rat )
      = ( ( ord_less_eq_rat @ X @ zero_zero_rat )
        | ( ord_less_eq_rat @ one_one_rat @ X ) ) ) ).

% inverse_le_1_iff
thf(fact_7586_one__less__inverse,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ A @ one_one_rat )
       => ( ord_less_rat @ one_one_rat @ ( inverse_inverse_rat @ A ) ) ) ) ).

% one_less_inverse
thf(fact_7587_one__less__inverse__iff,axiom,
    ! [X: rat] :
      ( ( ord_less_rat @ one_one_rat @ ( inverse_inverse_rat @ X ) )
      = ( ( ord_less_rat @ zero_zero_rat @ X )
        & ( ord_less_rat @ X @ one_one_rat ) ) ) ).

% one_less_inverse_iff
thf(fact_7588_inverse__add,axiom,
    ! [A: rat,B: rat] :
      ( ( A != zero_zero_rat )
     => ( ( B != zero_zero_rat )
       => ( ( plus_plus_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
          = ( times_times_rat @ ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ ( inverse_inverse_rat @ A ) ) @ ( inverse_inverse_rat @ B ) ) ) ) ) ).

% inverse_add
thf(fact_7589_division__ring__inverse__add,axiom,
    ! [A: rat,B: rat] :
      ( ( A != zero_zero_rat )
     => ( ( B != zero_zero_rat )
       => ( ( plus_plus_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
          = ( times_times_rat @ ( times_times_rat @ ( inverse_inverse_rat @ A ) @ ( plus_plus_rat @ A @ B ) ) @ ( inverse_inverse_rat @ B ) ) ) ) ) ).

% division_ring_inverse_add
thf(fact_7590_field__class_Ofield__inverse,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( times_times_rat @ ( inverse_inverse_rat @ A ) @ A )
        = one_one_rat ) ) ).

% field_class.field_inverse
thf(fact_7591_division__ring__inverse__diff,axiom,
    ! [A: rat,B: rat] :
      ( ( A != zero_zero_rat )
     => ( ( B != zero_zero_rat )
       => ( ( minus_minus_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
          = ( times_times_rat @ ( times_times_rat @ ( inverse_inverse_rat @ A ) @ ( minus_minus_rat @ B @ A ) ) @ ( inverse_inverse_rat @ B ) ) ) ) ) ).

% division_ring_inverse_diff
thf(fact_7592_nonzero__inverse__eq__divide,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( inverse_inverse_rat @ A )
        = ( divide_divide_rat @ one_one_rat @ A ) ) ) ).

% nonzero_inverse_eq_divide
thf(fact_7593_inverse__le__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
         => ( ord_less_eq_rat @ B @ A ) )
        & ( ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat )
         => ( ord_less_eq_rat @ A @ B ) ) ) ) ).

% inverse_le_iff
thf(fact_7594_inverse__less__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( inverse_inverse_rat @ A ) @ ( inverse_inverse_rat @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
         => ( ord_less_rat @ B @ A ) )
        & ( ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat )
         => ( ord_less_rat @ A @ B ) ) ) ) ).

% inverse_less_iff
thf(fact_7595_sub__BitM__One__eq,axiom,
    ! [N: num] :
      ( ( neg_numeral_sub_int @ ( bitM @ N ) @ one )
      = ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( neg_numeral_sub_int @ N @ one ) ) ) ).

% sub_BitM_One_eq
thf(fact_7596_Frct__code__post_I5_J,axiom,
    ! [K: num] :
      ( ( frct @ ( product_Pair_int_int @ one_one_int @ ( numeral_numeral_int @ K ) ) )
      = ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ K ) ) ) ).

% Frct_code_post(5)
thf(fact_7597_floor__rat__def,axiom,
    ( archim3151403230148437115or_rat
    = ( ^ [X4: rat] :
          ( the_int
          @ ^ [Z3: int] :
              ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z3 ) @ X4 )
              & ( ord_less_rat @ X4 @ ( ring_1_of_int_rat @ ( plus_plus_int @ Z3 @ one_one_int ) ) ) ) ) ) ) ).

% floor_rat_def
thf(fact_7598_less__eq__int_Orep__eq,axiom,
    ( ord_less_eq_int
    = ( ^ [X4: int,Xa3: int] :
          ( produc8739625826339149834_nat_o
          @ ^ [Y: nat,Z3: nat] :
              ( produc6081775807080527818_nat_o
              @ ^ [U2: nat,V5: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ Y @ V5 ) @ ( plus_plus_nat @ U2 @ Z3 ) ) )
          @ ( rep_Integ @ X4 )
          @ ( rep_Integ @ Xa3 ) ) ) ) ).

% less_eq_int.rep_eq
thf(fact_7599_less__int_Orep__eq,axiom,
    ( ord_less_int
    = ( ^ [X4: int,Xa3: int] :
          ( produc8739625826339149834_nat_o
          @ ^ [Y: nat,Z3: nat] :
              ( produc6081775807080527818_nat_o
              @ ^ [U2: nat,V5: nat] : ( ord_less_nat @ ( plus_plus_nat @ Y @ V5 ) @ ( plus_plus_nat @ U2 @ Z3 ) ) )
          @ ( rep_Integ @ X4 )
          @ ( rep_Integ @ Xa3 ) ) ) ) ).

% less_int.rep_eq
thf(fact_7600_Frct__code__post_I6_J,axiom,
    ! [K: num,L: num] :
      ( ( frct @ ( product_Pair_int_int @ ( numeral_numeral_int @ K ) @ ( numeral_numeral_int @ L ) ) )
      = ( divide_divide_rat @ ( numeral_numeral_rat @ K ) @ ( numeral_numeral_rat @ L ) ) ) ).

% Frct_code_post(6)
thf(fact_7601_nat_Orep__eq,axiom,
    ( nat2
    = ( ^ [X4: int] : ( produc6842872674320459806at_nat @ minus_minus_nat @ ( rep_Integ @ X4 ) ) ) ) ).

% nat.rep_eq
thf(fact_7602_Frct__code__post_I1_J,axiom,
    ! [A: int] :
      ( ( frct @ ( product_Pair_int_int @ zero_zero_int @ A ) )
      = zero_zero_rat ) ).

% Frct_code_post(1)
thf(fact_7603_Frct__code__post_I2_J,axiom,
    ! [A: int] :
      ( ( frct @ ( product_Pair_int_int @ A @ zero_zero_int ) )
      = zero_zero_rat ) ).

% Frct_code_post(2)
thf(fact_7604_Frct__code__post_I3_J,axiom,
    ( ( frct @ ( product_Pair_int_int @ one_one_int @ one_one_int ) )
    = one_one_rat ) ).

% Frct_code_post(3)
thf(fact_7605_Frct__code__post_I7_J,axiom,
    ! [A: int,B: int] :
      ( ( frct @ ( product_Pair_int_int @ ( uminus_uminus_int @ A ) @ B ) )
      = ( uminus_uminus_rat @ ( frct @ ( product_Pair_int_int @ A @ B ) ) ) ) ).

% Frct_code_post(7)
thf(fact_7606_Frct__code__post_I8_J,axiom,
    ! [A: int,B: int] :
      ( ( frct @ ( product_Pair_int_int @ A @ ( uminus_uminus_int @ B ) ) )
      = ( uminus_uminus_rat @ ( frct @ ( product_Pair_int_int @ A @ B ) ) ) ) ).

% Frct_code_post(8)
thf(fact_7607_Frct__code__post_I4_J,axiom,
    ! [K: num] :
      ( ( frct @ ( product_Pair_int_int @ ( numeral_numeral_int @ K ) @ one_one_int ) )
      = ( numeral_numeral_rat @ K ) ) ).

% Frct_code_post(4)
thf(fact_7608_uminus__int__def,axiom,
    ( uminus_uminus_int
    = ( map_fu3667384564859982768at_int @ rep_Integ @ abs_Integ
      @ ( produc2626176000494625587at_nat
        @ ^ [X4: nat,Y: nat] : ( product_Pair_nat_nat @ Y @ X4 ) ) ) ) ).

% uminus_int_def
thf(fact_7609_prod__encode__def,axiom,
    ( nat_prod_encode
    = ( produc6842872674320459806at_nat
      @ ^ [M5: nat,N5: nat] : ( plus_plus_nat @ ( nat_triangle @ ( plus_plus_nat @ M5 @ N5 ) ) @ M5 ) ) ) ).

% prod_encode_def
thf(fact_7610_le__prod__encode__1,axiom,
    ! [A: nat,B: nat] : ( ord_less_eq_nat @ A @ ( nat_prod_encode @ ( product_Pair_nat_nat @ A @ B ) ) ) ).

% le_prod_encode_1
thf(fact_7611_le__prod__encode__2,axiom,
    ! [B: nat,A: nat] : ( ord_less_eq_nat @ B @ ( nat_prod_encode @ ( product_Pair_nat_nat @ A @ B ) ) ) ).

% le_prod_encode_2
thf(fact_7612_prod__encode__prod__decode__aux,axiom,
    ! [K: nat,M: nat] :
      ( ( nat_prod_encode @ ( nat_prod_decode_aux @ K @ M ) )
      = ( plus_plus_nat @ ( nat_triangle @ K ) @ M ) ) ).

% prod_encode_prod_decode_aux
thf(fact_7613_times__int__def,axiom,
    ( times_times_int
    = ( map_fu4960017516451851995nt_int @ rep_Integ @ ( map_fu3667384564859982768at_int @ rep_Integ @ abs_Integ )
      @ ( produc27273713700761075at_nat
        @ ^ [X4: nat,Y: nat] :
            ( produc2626176000494625587at_nat
            @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X4 @ U2 ) @ ( times_times_nat @ Y @ V5 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X4 @ V5 ) @ ( times_times_nat @ Y @ U2 ) ) ) ) ) ) ) ).

% times_int_def
thf(fact_7614_minus__int__def,axiom,
    ( minus_minus_int
    = ( map_fu4960017516451851995nt_int @ rep_Integ @ ( map_fu3667384564859982768at_int @ rep_Integ @ abs_Integ )
      @ ( produc27273713700761075at_nat
        @ ^ [X4: nat,Y: nat] :
            ( produc2626176000494625587at_nat
            @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ Y @ U2 ) ) ) ) ) ) ).

% minus_int_def
thf(fact_7615_plus__int__def,axiom,
    ( plus_plus_int
    = ( map_fu4960017516451851995nt_int @ rep_Integ @ ( map_fu3667384564859982768at_int @ rep_Integ @ abs_Integ )
      @ ( produc27273713700761075at_nat
        @ ^ [X4: nat,Y: nat] :
            ( produc2626176000494625587at_nat
            @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ U2 ) @ ( plus_plus_nat @ Y @ V5 ) ) ) ) ) ) ).

% plus_int_def
thf(fact_7616_pred__nat__def,axiom,
    ( pred_nat
    = ( collec3392354462482085612at_nat
      @ ( produc6081775807080527818_nat_o
        @ ^ [M5: nat,N5: nat] :
            ( N5
            = ( suc @ M5 ) ) ) ) ) ).

% pred_nat_def
thf(fact_7617_gcd__integer__def,axiom,
    ( gcd_gcd_Code_integer
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ gcd_gcd_int ) ) ).

% gcd_integer_def
thf(fact_7618_less__eq__int__def,axiom,
    ( ord_less_eq_int
    = ( map_fu434086159418415080_int_o @ rep_Integ @ ( map_fu4826362097070443709at_o_o @ rep_Integ @ id_o )
      @ ( produc8739625826339149834_nat_o
        @ ^ [X4: nat,Y: nat] :
            ( produc6081775807080527818_nat_o
            @ ^ [U2: nat,V5: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ U2 @ Y ) ) ) ) ) ) ).

% less_eq_int_def
thf(fact_7619_less__int__def,axiom,
    ( ord_less_int
    = ( map_fu434086159418415080_int_o @ rep_Integ @ ( map_fu4826362097070443709at_o_o @ rep_Integ @ id_o )
      @ ( produc8739625826339149834_nat_o
        @ ^ [X4: nat,Y: nat] :
            ( produc6081775807080527818_nat_o
            @ ^ [U2: nat,V5: nat] : ( ord_less_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ U2 @ Y ) ) ) ) ) ) ).

% less_int_def
thf(fact_7620_Code__Numeral_Odup__def,axiom,
    ( code_dup
    = ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int
      @ ^ [K3: int] : ( plus_plus_int @ K3 @ K3 ) ) ) ).

% Code_Numeral.dup_def
thf(fact_7621_of__nat__eq__id,axiom,
    semiri1316708129612266289at_nat = id_nat ).

% of_nat_eq_id
thf(fact_7622_lessThan__0,axiom,
    ( ( set_ord_lessThan_nat @ zero_zero_nat )
    = bot_bot_set_nat ) ).

% lessThan_0
thf(fact_7623_min__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_min_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( suc @ ( ord_min_nat @ M @ N ) ) ) ).

% min_Suc_Suc
thf(fact_7624_min__0L,axiom,
    ! [N: nat] :
      ( ( ord_min_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% min_0L
thf(fact_7625_min__0R,axiom,
    ! [N: nat] :
      ( ( ord_min_nat @ N @ zero_zero_nat )
      = zero_zero_nat ) ).

% min_0R
thf(fact_7626_set__decode__zero,axiom,
    ( ( nat_set_decode @ zero_zero_nat )
    = bot_bot_set_nat ) ).

% set_decode_zero
thf(fact_7627_set__encode__empty,axiom,
    ( ( nat_set_encode @ bot_bot_set_nat )
    = zero_zero_nat ) ).

% set_encode_empty
thf(fact_7628_atMost__0,axiom,
    ( ( set_ord_atMost_nat @ zero_zero_nat )
    = ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) ).

% atMost_0
thf(fact_7629_min__diff,axiom,
    ! [M: nat,I: nat,N: nat] :
      ( ( ord_min_nat @ ( minus_minus_nat @ M @ I ) @ ( minus_minus_nat @ N @ I ) )
      = ( minus_minus_nat @ ( ord_min_nat @ M @ N ) @ I ) ) ).

% min_diff
thf(fact_7630_nat__mult__min__right,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ M @ ( ord_min_nat @ N @ Q2 ) )
      = ( ord_min_nat @ ( times_times_nat @ M @ N ) @ ( times_times_nat @ M @ Q2 ) ) ) ).

% nat_mult_min_right
thf(fact_7631_nat__mult__min__left,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ ( ord_min_nat @ M @ N ) @ Q2 )
      = ( ord_min_nat @ ( times_times_nat @ M @ Q2 ) @ ( times_times_nat @ N @ Q2 ) ) ) ).

% nat_mult_min_left
thf(fact_7632_atLeastLessThan0,axiom,
    ! [M: nat] :
      ( ( set_or4665077453230672383an_nat @ M @ zero_zero_nat )
      = bot_bot_set_nat ) ).

% atLeastLessThan0
thf(fact_7633_lessThan__empty__iff,axiom,
    ! [N: nat] :
      ( ( ( set_ord_lessThan_nat @ N )
        = bot_bot_set_nat )
      = ( N = zero_zero_nat ) ) ).

% lessThan_empty_iff
thf(fact_7634_min__Suc1,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_min_nat @ ( suc @ N ) @ M )
      = ( case_nat_nat @ zero_zero_nat
        @ ^ [M6: nat] : ( suc @ ( ord_min_nat @ N @ M6 ) )
        @ M ) ) ).

% min_Suc1
thf(fact_7635_min__Suc2,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_min_nat @ M @ ( suc @ N ) )
      = ( case_nat_nat @ zero_zero_nat
        @ ^ [M6: nat] : ( suc @ ( ord_min_nat @ M6 @ N ) )
        @ M ) ) ).

% min_Suc2
thf(fact_7636_num__of__integer__def,axiom,
    ( code_num_of_integer
    = ( map_fu1227494855608507351um_num @ code_int_of_integer @ id_num @ ( comp_nat_num_int @ num_of_nat @ nat2 ) ) ) ).

% num_of_integer_def
thf(fact_7637_nat__def,axiom,
    ( nat2
    = ( map_fu2345160673673942751at_nat @ rep_Integ @ id_nat @ ( produc6842872674320459806at_nat @ minus_minus_nat ) ) ) ).

% nat_def
thf(fact_7638_atLeast1__atMost__eq__remove0,axiom,
    ! [N: nat] :
      ( ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( minus_minus_set_nat @ ( set_ord_atMost_nat @ N ) @ ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) ) ).

% atLeast1_atMost_eq_remove0
thf(fact_7639_atLeast1__lessThan__eq__remove0,axiom,
    ! [N: nat] :
      ( ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( minus_minus_set_nat @ ( set_ord_lessThan_nat @ N ) @ ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) ) ).

% atLeast1_lessThan_eq_remove0
thf(fact_7640_and__int_Opsimps,axiom,
    ! [K: int,L: int] :
      ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ K @ L ) )
     => ( ( ( ( member_int @ K @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
            & ( member_int @ L @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
         => ( ( bit_se725231765392027082nd_int @ K @ L )
            = ( uminus_uminus_int
              @ ( zero_n2684676970156552555ol_int
                @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L ) ) ) ) ) )
        & ( ~ ( ( member_int @ K @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
              & ( member_int @ L @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
         => ( ( bit_se725231765392027082nd_int @ K @ L )
            = ( plus_plus_int
              @ ( zero_n2684676970156552555ol_int
                @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L ) ) )
              @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% and_int.psimps
thf(fact_7641_and__int_Opelims,axiom,
    ! [X: int,Xa: int,Y3: int] :
      ( ( ( bit_se725231765392027082nd_int @ X @ Xa )
        = Y3 )
     => ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ X @ Xa ) )
       => ~ ( ( ( ( ( member_int @ X @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
                  & ( member_int @ Xa @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
               => ( Y3
                  = ( uminus_uminus_int
                    @ ( zero_n2684676970156552555ol_int
                      @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X )
                        & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Xa ) ) ) ) ) )
              & ( ~ ( ( member_int @ X @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
                    & ( member_int @ Xa @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
               => ( Y3
                  = ( plus_plus_int
                    @ ( zero_n2684676970156552555ol_int
                      @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X )
                        & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Xa ) ) )
                    @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ X @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ Xa @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) )
           => ~ ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ X @ Xa ) ) ) ) ) ).

% and_int.pelims
thf(fact_7642_and__int_Opinduct,axiom,
    ! [A0: int,A12: int,P: int > int > $o] :
      ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ A0 @ A12 ) )
     => ( ! [K2: int,L3: int] :
            ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ K2 @ L3 ) )
           => ( ( ~ ( ( member_int @ K2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
                    & ( member_int @ L3 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
               => ( P @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) )
             => ( P @ K2 @ L3 ) ) )
       => ( P @ A0 @ A12 ) ) ) ).

% and_int.pinduct
thf(fact_7643_upto_Opinduct,axiom,
    ! [A0: int,A12: int,P: int > int > $o] :
      ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ A0 @ A12 ) )
     => ( ! [I3: int,J2: int] :
            ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ I3 @ J2 ) )
           => ( ( ( ord_less_eq_int @ I3 @ J2 )
               => ( P @ ( plus_plus_int @ I3 @ one_one_int ) @ J2 ) )
             => ( P @ I3 @ J2 ) ) )
       => ( P @ A0 @ A12 ) ) ) ).

% upto.pinduct
thf(fact_7644_Code__Numeral_Osub__def,axiom,
    ( code_sub
    = ( map_fu6891787308814931657nteger @ id_num @ ( map_fu8638147718074629079nteger @ id_num @ code_integer_of_int )
      @ ^ [M5: num,N5: num] : ( minus_minus_int @ ( numeral_numeral_int @ M5 ) @ ( numeral_numeral_int @ N5 ) ) ) ) ).

% Code_Numeral.sub_def
thf(fact_7645_Gcd__remove0__nat,axiom,
    ! [M2: set_nat] :
      ( ( finite_finite_nat @ M2 )
     => ( ( gcd_Gcd_nat @ M2 )
        = ( gcd_Gcd_nat @ ( minus_minus_set_nat @ M2 @ ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) ) ) ) ).

% Gcd_remove0_nat
thf(fact_7646_image__minus__const__atLeastLessThan__nat,axiom,
    ! [C: nat,Y3: nat,X: nat] :
      ( ( ( ord_less_nat @ C @ Y3 )
       => ( ( image_nat_nat
            @ ^ [I2: nat] : ( minus_minus_nat @ I2 @ C )
            @ ( set_or4665077453230672383an_nat @ X @ Y3 ) )
          = ( set_or4665077453230672383an_nat @ ( minus_minus_nat @ X @ C ) @ ( minus_minus_nat @ Y3 @ C ) ) ) )
      & ( ~ ( ord_less_nat @ C @ Y3 )
       => ( ( ( ord_less_nat @ X @ Y3 )
           => ( ( image_nat_nat
                @ ^ [I2: nat] : ( minus_minus_nat @ I2 @ C )
                @ ( set_or4665077453230672383an_nat @ X @ Y3 ) )
              = ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) )
          & ( ~ ( ord_less_nat @ X @ Y3 )
           => ( ( image_nat_nat
                @ ^ [I2: nat] : ( minus_minus_nat @ I2 @ C )
                @ ( set_or4665077453230672383an_nat @ X @ Y3 ) )
              = bot_bot_set_nat ) ) ) ) ) ).

% image_minus_const_atLeastLessThan_nat
thf(fact_7647_Gcd__greatest__nat,axiom,
    ! [A3: set_nat,A: nat] :
      ( ! [B2: nat] :
          ( ( member_nat @ B2 @ A3 )
         => ( dvd_dvd_nat @ A @ B2 ) )
     => ( dvd_dvd_nat @ A @ ( gcd_Gcd_nat @ A3 ) ) ) ).

% Gcd_greatest_nat
thf(fact_7648_Gcd__dvd__nat,axiom,
    ! [A: nat,A3: set_nat] :
      ( ( member_nat @ A @ A3 )
     => ( dvd_dvd_nat @ ( gcd_Gcd_nat @ A3 ) @ A ) ) ).

% Gcd_dvd_nat
thf(fact_7649_Gcd__nat__eq__one,axiom,
    ! [N6: set_nat] :
      ( ( member_nat @ one_one_nat @ N6 )
     => ( ( gcd_Gcd_nat @ N6 )
        = one_one_nat ) ) ).

% Gcd_nat_eq_one
thf(fact_7650_zero__notin__Suc__image,axiom,
    ! [A3: set_nat] :
      ~ ( member_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ A3 ) ) ).

% zero_notin_Suc_image
thf(fact_7651_Gcd__in,axiom,
    ! [A3: set_nat] :
      ( ! [A2: nat,B2: nat] :
          ( ( member_nat @ A2 @ A3 )
         => ( ( member_nat @ B2 @ A3 )
           => ( member_nat @ ( gcd_gcd_nat @ A2 @ B2 ) @ A3 ) ) )
     => ( ( A3 != bot_bot_set_nat )
       => ( member_nat @ ( gcd_Gcd_nat @ A3 ) @ A3 ) ) ) ).

% Gcd_in
thf(fact_7652_image__Suc__atMost,axiom,
    ! [N: nat] :
      ( ( image_nat_nat @ suc @ ( set_ord_atMost_nat @ N ) )
      = ( set_or1269000886237332187st_nat @ one_one_nat @ ( suc @ N ) ) ) ).

% image_Suc_atMost
thf(fact_7653_image__Suc__lessThan,axiom,
    ! [N: nat] :
      ( ( image_nat_nat @ suc @ ( set_ord_lessThan_nat @ N ) )
      = ( set_or1269000886237332187st_nat @ one_one_nat @ N ) ) ).

% image_Suc_lessThan
thf(fact_7654_atLeast0__atMost__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ) ).

% atLeast0_atMost_Suc_eq_insert_0
thf(fact_7655_atLeast0__lessThan__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).

% atLeast0_lessThan_Suc_eq_insert_0
thf(fact_7656_atMost__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_ord_atMost_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% atMost_Suc_eq_insert_0
thf(fact_7657_lessThan__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_ord_lessThan_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% lessThan_Suc_eq_insert_0
thf(fact_7658_abs__Gcd__eq,axiom,
    ! [K5: set_int] :
      ( ( abs_abs_int @ ( gcd_Gcd_int @ K5 ) )
      = ( gcd_Gcd_int @ K5 ) ) ).

% abs_Gcd_eq
thf(fact_7659_Gcd__abs__eq,axiom,
    ! [K5: set_int] :
      ( ( gcd_Gcd_int @ ( image_int_int @ abs_abs_int @ K5 ) )
      = ( gcd_Gcd_int @ K5 ) ) ).

% Gcd_abs_eq
thf(fact_7660_Gcd__int__eq,axiom,
    ! [N6: set_nat] :
      ( ( gcd_Gcd_int @ ( image_nat_int @ semiri1314217659103216013at_int @ N6 ) )
      = ( semiri1314217659103216013at_int @ ( gcd_Gcd_nat @ N6 ) ) ) ).

% Gcd_int_eq
thf(fact_7661_Gcd__nat__abs__eq,axiom,
    ! [K5: set_int] :
      ( ( gcd_Gcd_nat
        @ ( image_int_nat
          @ ^ [K3: int] : ( nat2 @ ( abs_abs_int @ K3 ) )
          @ K5 ) )
      = ( nat2 @ ( gcd_Gcd_int @ K5 ) ) ) ).

% Gcd_nat_abs_eq
thf(fact_7662_Gcd__dvd__int,axiom,
    ! [A: int,A3: set_int] :
      ( ( member_int @ A @ A3 )
     => ( dvd_dvd_int @ ( gcd_Gcd_int @ A3 ) @ A ) ) ).

% Gcd_dvd_int
thf(fact_7663_Gcd__greatest__int,axiom,
    ! [A3: set_int,A: int] :
      ( ! [B2: int] :
          ( ( member_int @ B2 @ A3 )
         => ( dvd_dvd_int @ A @ B2 ) )
     => ( dvd_dvd_int @ A @ ( gcd_Gcd_int @ A3 ) ) ) ).

% Gcd_greatest_int
thf(fact_7664_image__add__int__atLeastLessThan,axiom,
    ! [L: int,U: int] :
      ( ( image_int_int
        @ ^ [X4: int] : ( plus_plus_int @ X4 @ L )
        @ ( set_or4662586982721622107an_int @ zero_zero_int @ ( minus_minus_int @ U @ L ) ) )
      = ( set_or4662586982721622107an_int @ L @ U ) ) ).

% image_add_int_atLeastLessThan
thf(fact_7665_Gcd__int__greater__eq__0,axiom,
    ! [K5: set_int] : ( ord_less_eq_int @ zero_zero_int @ ( gcd_Gcd_int @ K5 ) ) ).

% Gcd_int_greater_eq_0
thf(fact_7666_Gcd__int__def,axiom,
    ( gcd_Gcd_int
    = ( ^ [K6: set_int] : ( semiri1314217659103216013at_int @ ( gcd_Gcd_nat @ ( image_int_nat @ ( comp_int_nat_int @ nat2 @ abs_abs_int ) @ K6 ) ) ) ) ) ).

% Gcd_int_def
thf(fact_7667_int__numeral__and__not__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ N ) ) ) ).

% int_numeral_and_not_num
thf(fact_7668_int__numeral__not__and__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ N @ M ) ) ) ).

% int_numeral_not_and_num
thf(fact_7669_Sup__nat__empty,axiom,
    ( ( complete_Sup_Sup_nat @ bot_bot_set_nat )
    = zero_zero_nat ) ).

% Sup_nat_empty
thf(fact_7670_bot__nat__def,axiom,
    bot_bot_nat = zero_zero_nat ).

% bot_nat_def
thf(fact_7671_Inf__unit__def,axiom,
    ( comple2584293577114468500t_unit
    = ( ^ [Uu2: set_Product_unit] : product_Unity ) ) ).

% Inf_unit_def
thf(fact_7672_bot__unit__def,axiom,
    bot_bot_Product_unit = product_Unity ).

% bot_unit_def
thf(fact_7673_Sup__unit__def,axiom,
    ( comple4687483117567863418t_unit
    = ( ^ [Uu2: set_Product_unit] : product_Unity ) ) ).

% Sup_unit_def
thf(fact_7674_inf__unit__def,axiom,
    ( inf_inf_Product_unit
    = ( ^ [Uu2: product_unit,Uv2: product_unit] : product_Unity ) ) ).

% inf_unit_def
thf(fact_7675_inf__nat__def,axiom,
    inf_inf_nat = ord_min_nat ).

% inf_nat_def
thf(fact_7676_UN__atMost__UNIV,axiom,
    ( ( comple7399068483239264473et_nat @ ( image_nat_set_nat @ set_ord_atMost_nat @ top_top_set_nat ) )
    = top_top_set_nat ) ).

% UN_atMost_UNIV
thf(fact_7677_UN__lessThan__UNIV,axiom,
    ( ( comple7399068483239264473et_nat @ ( image_nat_set_nat @ set_ord_lessThan_nat @ top_top_set_nat ) )
    = top_top_set_nat ) ).

% UN_lessThan_UNIV
thf(fact_7678_inf__int__def,axiom,
    inf_inf_int = ord_min_int ).

% inf_int_def
thf(fact_7679_range__mod,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( image_nat_nat
          @ ^ [M5: nat] : ( modulo_modulo_nat @ M5 @ N )
          @ top_top_set_nat )
        = ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ).

% range_mod
thf(fact_7680_measure__function__int,axiom,
    fun_is_measure_int @ ( comp_int_nat_int @ nat2 @ abs_abs_int ) ).

% measure_function_int
thf(fact_7681_card__UNIV__unit,axiom,
    ( ( finite410649719033368117t_unit @ top_to1996260823553986621t_unit )
    = one_one_nat ) ).

% card_UNIV_unit
thf(fact_7682_range__abs__Nats,axiom,
    ( ( image_int_int @ abs_abs_int @ top_top_set_int )
    = semiring_1_Nats_int ) ).

% range_abs_Nats
thf(fact_7683_top__unit__def,axiom,
    top_top_Product_unit = product_Unity ).

% top_unit_def
thf(fact_7684_UNIV__unit,axiom,
    ( top_to1996260823553986621t_unit
    = ( insert_Product_unit @ product_Unity @ bot_bo3957492148770167129t_unit ) ) ).

% UNIV_unit
thf(fact_7685_infinite__UNIV__int,axiom,
    ~ ( finite_finite_int @ top_top_set_int ) ).

% infinite_UNIV_int
thf(fact_7686_atLeastLessThan__add__Un,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( set_or4665077453230672383an_nat @ I @ ( plus_plus_nat @ J @ K ) )
        = ( sup_sup_set_nat @ ( set_or4665077453230672383an_nat @ I @ J ) @ ( set_or4665077453230672383an_nat @ J @ ( plus_plus_nat @ J @ K ) ) ) ) ) ).

% atLeastLessThan_add_Un
thf(fact_7687_int__in__range__abs,axiom,
    ! [N: nat] : ( member_int @ ( semiri1314217659103216013at_int @ N ) @ ( image_int_int @ abs_abs_int @ top_top_set_int ) ) ).

% int_in_range_abs
thf(fact_7688_Gcd__eq__Max,axiom,
    ! [M2: set_nat] :
      ( ( finite_finite_nat @ M2 )
     => ( ( M2 != bot_bot_set_nat )
       => ( ~ ( member_nat @ zero_zero_nat @ M2 )
         => ( ( gcd_Gcd_nat @ M2 )
            = ( lattic8265883725875713057ax_nat
              @ ( comple7806235888213564991et_nat
                @ ( image_nat_set_nat
                  @ ^ [M5: nat] :
                      ( collect_nat
                      @ ^ [D2: nat] : ( dvd_dvd_nat @ D2 @ M5 ) )
                  @ M2 ) ) ) ) ) ) ) ).

% Gcd_eq_Max
thf(fact_7689_Max__divisors__self__nat,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ( lattic8265883725875713057ax_nat
          @ ( collect_nat
            @ ^ [D2: nat] : ( dvd_dvd_nat @ D2 @ N ) ) )
        = N ) ) ).

% Max_divisors_self_nat
thf(fact_7690_sup__unit__def,axiom,
    ( sup_sup_Product_unit
    = ( ^ [Uu2: product_unit,Uv2: product_unit] : product_Unity ) ) ).

% sup_unit_def
thf(fact_7691_sup__nat__def,axiom,
    sup_sup_nat = ord_max_nat ).

% sup_nat_def
thf(fact_7692_sup__int__def,axiom,
    sup_sup_int = ord_max_int ).

% sup_int_def
thf(fact_7693_Sup__nat__def,axiom,
    ( complete_Sup_Sup_nat
    = ( ^ [X9: set_nat] : ( if_nat @ ( X9 = bot_bot_set_nat ) @ zero_zero_nat @ ( lattic8265883725875713057ax_nat @ X9 ) ) ) ) ).

% Sup_nat_def
thf(fact_7694_divide__nat__def,axiom,
    ( divide_divide_nat
    = ( ^ [M5: nat,N5: nat] :
          ( if_nat @ ( N5 = zero_zero_nat ) @ zero_zero_nat
          @ ( lattic8265883725875713057ax_nat
            @ ( collect_nat
              @ ^ [K3: nat] : ( ord_less_eq_nat @ ( times_times_nat @ K3 @ N5 ) @ M5 ) ) ) ) ) ) ).

% divide_nat_def
thf(fact_7695_gcd__is__Max__divisors__nat,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( gcd_gcd_nat @ M @ N )
        = ( lattic8265883725875713057ax_nat
          @ ( collect_nat
            @ ^ [D2: nat] :
                ( ( dvd_dvd_nat @ D2 @ M )
                & ( dvd_dvd_nat @ D2 @ N ) ) ) ) ) ) ).

% gcd_is_Max_divisors_nat
thf(fact_7696_INT__greaterThan__UNIV,axiom,
    ( ( comple7806235888213564991et_nat @ ( image_nat_set_nat @ set_or1210151606488870762an_nat @ top_top_set_nat ) )
    = bot_bot_set_nat ) ).

% INT_greaterThan_UNIV
thf(fact_7697_Max__divisors__self__int,axiom,
    ! [N: int] :
      ( ( N != zero_zero_int )
     => ( ( lattic8263393255366662781ax_int
          @ ( collect_int
            @ ^ [D2: int] : ( dvd_dvd_int @ D2 @ N ) ) )
        = ( abs_abs_int @ N ) ) ) ).

% Max_divisors_self_int
thf(fact_7698_gcd__is__Max__divisors__int,axiom,
    ! [N: int,M: int] :
      ( ( N != zero_zero_int )
     => ( ( gcd_gcd_int @ M @ N )
        = ( lattic8263393255366662781ax_int
          @ ( collect_int
            @ ^ [D2: int] :
                ( ( dvd_dvd_int @ D2 @ M )
                & ( dvd_dvd_int @ D2 @ N ) ) ) ) ) ) ).

% gcd_is_Max_divisors_int
thf(fact_7699_greaterThan__0,axiom,
    ( ( set_or1210151606488870762an_nat @ zero_zero_nat )
    = ( image_nat_nat @ suc @ top_top_set_nat ) ) ).

% greaterThan_0
thf(fact_7700_Gcd__nat__set__eq__fold,axiom,
    ! [Xs2: list_nat] :
      ( ( gcd_Gcd_nat @ ( set_nat2 @ Xs2 ) )
      = ( fold_nat_nat @ gcd_gcd_nat @ Xs2 @ zero_zero_nat ) ) ).

% Gcd_nat_set_eq_fold
thf(fact_7701_Gcd__int__set__eq__fold,axiom,
    ! [Xs2: list_int] :
      ( ( gcd_Gcd_int @ ( set_int2 @ Xs2 ) )
      = ( fold_int_int @ gcd_gcd_int @ Xs2 @ zero_zero_int ) ) ).

% Gcd_int_set_eq_fold
thf(fact_7702_binomial__def,axiom,
    ( binomial
    = ( ^ [N5: nat,K3: nat] :
          ( finite_card_set_nat
          @ ( collect_set_nat
            @ ^ [K6: set_nat] :
                ( ( member_set_nat @ K6 @ ( pow_nat @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N5 ) ) )
                & ( ( finite_card_nat @ K6 )
                  = K3 ) ) ) ) ) ) ).

% binomial_def
thf(fact_7703_Field__natLeq__on,axiom,
    ! [N: nat] :
      ( ( field_nat
        @ ( collec3392354462482085612at_nat
          @ ( produc6081775807080527818_nat_o
            @ ^ [X4: nat,Y: nat] :
                ( ( ord_less_nat @ X4 @ N )
                & ( ord_less_nat @ Y @ N )
                & ( ord_less_eq_nat @ X4 @ Y ) ) ) ) )
      = ( collect_nat
        @ ^ [X4: nat] : ( ord_less_nat @ X4 @ N ) ) ) ).

% Field_natLeq_on
thf(fact_7704_full__exhaustive__int_H_Ocases,axiom,
    ! [X: produc2285326912895808259nt_int] :
      ~ ! [F5: produc8551481072490612790e_term > option6357759511663192854e_term,D3: int,I3: int] :
          ( X
         != ( produc5700946648718959541nt_int @ F5 @ ( product_Pair_int_int @ D3 @ I3 ) ) ) ).

% full_exhaustive_int'.cases
thf(fact_7705_exhaustive__int_H_Ocases,axiom,
    ! [X: produc7773217078559923341nt_int] :
      ~ ! [F5: int > option6357759511663192854e_term,D3: int,I3: int] :
          ( X
         != ( produc4305682042979456191nt_int @ F5 @ ( product_Pair_int_int @ D3 @ I3 ) ) ) ).

% exhaustive_int'.cases
thf(fact_7706_full__exhaustive__integer_H_Ocases,axiom,
    ! [X: produc1908205239877642774nteger] :
      ~ ! [F5: produc6241069584506657477e_term > option6357759511663192854e_term,D3: code_integer,I3: code_integer] :
          ( X
         != ( produc8603105652947943368nteger @ F5 @ ( produc1086072967326762835nteger @ D3 @ I3 ) ) ) ).

% full_exhaustive_integer'.cases
thf(fact_7707_exhaustive__integer_H_Ocases,axiom,
    ! [X: produc8763457246119570046nteger] :
      ~ ! [F5: code_integer > option6357759511663192854e_term,D3: code_integer,I3: code_integer] :
          ( X
         != ( produc6137756002093451184nteger @ F5 @ ( produc1086072967326762835nteger @ D3 @ I3 ) ) ) ).

% exhaustive_integer'.cases
thf(fact_7708_natLess__def,axiom,
    ( bNF_Ca8459412986667044542atLess
    = ( collec3392354462482085612at_nat @ ( produc6081775807080527818_nat_o @ ord_less_nat ) ) ) ).

% natLess_def
thf(fact_7709_mono__ge2__power__minus__self,axiom,
    ! [K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( order_mono_nat_nat
        @ ^ [M5: nat] : ( minus_minus_nat @ ( power_power_nat @ K @ M5 ) @ M5 ) ) ) ).

% mono_ge2_power_minus_self
thf(fact_7710_sub_Orsp,axiom,
    ( bNF_re8402795839162346335um_int
    @ ^ [Y5: num,Z2: num] : Y5 = Z2
    @ ( bNF_re1822329894187522285nt_int
      @ ^ [Y5: num,Z2: num] : Y5 = Z2
      @ ^ [Y5: int,Z2: int] : Y5 = Z2 )
    @ ^ [M5: num,N5: num] : ( minus_minus_int @ ( numeral_numeral_int @ M5 ) @ ( numeral_numeral_int @ N5 ) )
    @ ^ [M5: num,N5: num] : ( minus_minus_int @ ( numeral_numeral_int @ M5 ) @ ( numeral_numeral_int @ N5 ) ) ) ).

% sub.rsp
thf(fact_7711_mono__Suc,axiom,
    order_mono_nat_nat @ suc ).

% mono_Suc
thf(fact_7712_gcd__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y5: int,Z2: int] : Y5 = Z2
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y5: int,Z2: int] : Y5 = Z2
      @ ^ [Y5: int,Z2: int] : Y5 = Z2 )
    @ gcd_gcd_int
    @ gcd_gcd_int ) ).

% gcd_integer.rsp
thf(fact_7713_plus__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y5: nat,Z2: nat] : Y5 = Z2
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y5: nat,Z2: nat] : Y5 = Z2
      @ ^ [Y5: nat,Z2: nat] : Y5 = Z2 )
    @ plus_plus_nat
    @ plus_plus_nat ) ).

% plus_natural.rsp
thf(fact_7714_dup_Orsp,axiom,
    ( bNF_re4712519889275205905nt_int
    @ ^ [Y5: int,Z2: int] : Y5 = Z2
    @ ^ [Y5: int,Z2: int] : Y5 = Z2
    @ ^ [K3: int] : ( plus_plus_int @ K3 @ K3 )
    @ ^ [K3: int] : ( plus_plus_int @ K3 @ K3 ) ) ).

% dup.rsp
thf(fact_7715_mono__times__nat,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( order_mono_nat_nat @ ( times_times_nat @ N ) ) ) ).

% mono_times_nat
thf(fact_7716_num__of__integer_Orsp,axiom,
    ( bNF_re7626690874201225453um_num
    @ ^ [Y5: int,Z2: int] : Y5 = Z2
    @ ^ [Y5: num,Z2: num] : Y5 = Z2
    @ ( comp_nat_num_int @ num_of_nat @ nat2 )
    @ ( comp_nat_num_int @ num_of_nat @ nat2 ) ) ).

% num_of_integer.rsp
thf(fact_7717_plus__rat_Otransfer,axiom,
    ( bNF_re7627151682743391978at_rat @ pcr_rat @ ( bNF_re8279943556446156061nt_rat @ pcr_rat @ pcr_rat )
    @ ^ [X4: product_prod_int_int,Y: product_prod_int_int] : ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) @ ( times_times_int @ ( product_fst_int_int @ Y ) @ ( product_snd_int_int @ X4 ) ) ) @ ( times_times_int @ ( product_snd_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) )
    @ plus_plus_rat ) ).

% plus_rat.transfer
thf(fact_7718_inverse__rat_Otransfer,axiom,
    ( bNF_re8279943556446156061nt_rat @ pcr_rat @ pcr_rat
    @ ^ [X4: product_prod_int_int] :
        ( if_Pro3027730157355071871nt_int
        @ ( ( product_fst_int_int @ X4 )
          = zero_zero_int )
        @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
        @ ( product_Pair_int_int @ ( product_snd_int_int @ X4 ) @ ( product_fst_int_int @ X4 ) ) )
    @ inverse_inverse_rat ) ).

% inverse_rat.transfer
thf(fact_7719_one__rat_Otransfer,axiom,
    pcr_rat @ ( product_Pair_int_int @ one_one_int @ one_one_int ) @ one_one_rat ).

% one_rat.transfer
thf(fact_7720_zero__rat_Otransfer,axiom,
    pcr_rat @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ zero_zero_rat ).

% zero_rat.transfer
thf(fact_7721_uminus__rat_Otransfer,axiom,
    ( bNF_re8279943556446156061nt_rat @ pcr_rat @ pcr_rat
    @ ^ [X4: product_prod_int_int] : ( product_Pair_int_int @ ( uminus_uminus_int @ ( product_fst_int_int @ X4 ) ) @ ( product_snd_int_int @ X4 ) )
    @ uminus_uminus_rat ) ).

% uminus_rat.transfer
thf(fact_7722_times__rat_Otransfer,axiom,
    ( bNF_re7627151682743391978at_rat @ pcr_rat @ ( bNF_re8279943556446156061nt_rat @ pcr_rat @ pcr_rat )
    @ ^ [X4: product_prod_int_int,Y: product_prod_int_int] : ( product_Pair_int_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_fst_int_int @ Y ) ) @ ( times_times_int @ ( product_snd_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) )
    @ times_times_rat ) ).

% times_rat.transfer
thf(fact_7723_positive_Otransfer,axiom,
    ( bNF_re1494630372529172596at_o_o @ pcr_rat
    @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
    @ ^ [X4: product_prod_int_int] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ X4 ) ) )
    @ positive ) ).

% positive.transfer
thf(fact_7724_positive__def,axiom,
    ( positive
    = ( map_fu898904425404107465nt_o_o @ rep_Rat @ id_o
      @ ^ [X4: product_prod_int_int] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ X4 ) ) ) ) ) ).

% positive_def
thf(fact_7725_times__int_Otransfer,axiom,
    ( bNF_re7408651293131936558nt_int @ pcr_int @ ( bNF_re7400052026677387805at_int @ pcr_int @ pcr_int )
    @ ( produc27273713700761075at_nat
      @ ^ [X4: nat,Y: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X4 @ U2 ) @ ( times_times_nat @ Y @ V5 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X4 @ V5 ) @ ( times_times_nat @ Y @ U2 ) ) ) ) )
    @ times_times_int ) ).

% times_int.transfer
thf(fact_7726_zero__int_Otransfer,axiom,
    pcr_int @ ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) @ zero_zero_int ).

% zero_int.transfer
thf(fact_7727_int__transfer,axiom,
    ( bNF_re6830278522597306478at_int
    @ ^ [Y5: nat,Z2: nat] : Y5 = Z2
    @ pcr_int
    @ ^ [N5: nat] : ( product_Pair_nat_nat @ N5 @ zero_zero_nat )
    @ semiri1314217659103216013at_int ) ).

% int_transfer
thf(fact_7728_uminus__int_Otransfer,axiom,
    ( bNF_re7400052026677387805at_int @ pcr_int @ pcr_int
    @ ( produc2626176000494625587at_nat
      @ ^ [X4: nat,Y: nat] : ( product_Pair_nat_nat @ Y @ X4 ) )
    @ uminus_uminus_int ) ).

% uminus_int.transfer
thf(fact_7729_nat_Otransfer,axiom,
    ( bNF_re4555766996558763186at_nat @ pcr_int
    @ ^ [Y5: nat,Z2: nat] : Y5 = Z2
    @ ( produc6842872674320459806at_nat @ minus_minus_nat )
    @ nat2 ) ).

% nat.transfer
thf(fact_7730_one__int_Otransfer,axiom,
    pcr_int @ ( product_Pair_nat_nat @ one_one_nat @ zero_zero_nat ) @ one_one_int ).

% one_int.transfer
thf(fact_7731_less__int_Otransfer,axiom,
    ( bNF_re717283939379294677_int_o @ pcr_int
    @ ( bNF_re6644619430987730960nt_o_o @ pcr_int
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2 )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X4: nat,Y: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V5: nat] : ( ord_less_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ U2 @ Y ) ) ) )
    @ ord_less_int ) ).

% less_int.transfer
thf(fact_7732_less__eq__int_Otransfer,axiom,
    ( bNF_re717283939379294677_int_o @ pcr_int
    @ ( bNF_re6644619430987730960nt_o_o @ pcr_int
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2 )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X4: nat,Y: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V5: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ U2 @ Y ) ) ) )
    @ ord_less_eq_int ) ).

% less_eq_int.transfer
thf(fact_7733_plus__int_Otransfer,axiom,
    ( bNF_re7408651293131936558nt_int @ pcr_int @ ( bNF_re7400052026677387805at_int @ pcr_int @ pcr_int )
    @ ( produc27273713700761075at_nat
      @ ^ [X4: nat,Y: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ U2 ) @ ( plus_plus_nat @ Y @ V5 ) ) ) )
    @ plus_plus_int ) ).

% plus_int.transfer
thf(fact_7734_minus__int_Otransfer,axiom,
    ( bNF_re7408651293131936558nt_int @ pcr_int @ ( bNF_re7400052026677387805at_int @ pcr_int @ pcr_int )
    @ ( produc27273713700761075at_nat
      @ ^ [X4: nat,Y: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ Y @ U2 ) ) ) )
    @ minus_minus_int ) ).

% minus_int.transfer
thf(fact_7735_plus__rat__def,axiom,
    ( plus_plus_rat
    = ( map_fu4333342158222067775at_rat @ rep_Rat @ ( map_fu5673905371560938248nt_rat @ rep_Rat @ abs_Rat )
      @ ^ [X4: product_prod_int_int,Y: product_prod_int_int] : ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) @ ( times_times_int @ ( product_fst_int_int @ Y ) @ ( product_snd_int_int @ X4 ) ) ) @ ( times_times_int @ ( product_snd_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) ) ) ) ).

% plus_rat_def
thf(fact_7736_inverse__rat__def,axiom,
    ( inverse_inverse_rat
    = ( map_fu5673905371560938248nt_rat @ rep_Rat @ abs_Rat
      @ ^ [X4: product_prod_int_int] :
          ( if_Pro3027730157355071871nt_int
          @ ( ( product_fst_int_int @ X4 )
            = zero_zero_int )
          @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
          @ ( product_Pair_int_int @ ( product_snd_int_int @ X4 ) @ ( product_fst_int_int @ X4 ) ) ) ) ) ).

% inverse_rat_def
thf(fact_7737_times__rat__def,axiom,
    ( times_times_rat
    = ( map_fu4333342158222067775at_rat @ rep_Rat @ ( map_fu5673905371560938248nt_rat @ rep_Rat @ abs_Rat )
      @ ^ [X4: product_prod_int_int,Y: product_prod_int_int] : ( product_Pair_int_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_fst_int_int @ Y ) ) @ ( times_times_int @ ( product_snd_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) ) ) ) ).

% times_rat_def
thf(fact_7738_uminus__rat__def,axiom,
    ( uminus_uminus_rat
    = ( map_fu5673905371560938248nt_rat @ rep_Rat @ abs_Rat
      @ ^ [X4: product_prod_int_int] : ( product_Pair_int_int @ ( uminus_uminus_int @ ( product_fst_int_int @ X4 ) ) @ ( product_snd_int_int @ X4 ) ) ) ) ).

% uminus_rat_def
thf(fact_7739_one__rat__def,axiom,
    ( one_one_rat
    = ( abs_Rat @ ( product_Pair_int_int @ one_one_int @ one_one_int ) ) ) ).

% one_rat_def
thf(fact_7740_zero__rat__def,axiom,
    ( zero_zero_rat
    = ( abs_Rat @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) ) ) ).

% zero_rat_def
thf(fact_7741_plus__rat_Oabs__eq,axiom,
    ! [Xa: product_prod_int_int,X: product_prod_int_int] :
      ( ( ratrel @ Xa @ Xa )
     => ( ( ratrel @ X @ X )
       => ( ( plus_plus_rat @ ( abs_Rat @ Xa ) @ ( abs_Rat @ X ) )
          = ( abs_Rat @ ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ Xa ) @ ( product_snd_int_int @ X ) ) @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ Xa ) ) ) @ ( times_times_int @ ( product_snd_int_int @ Xa ) @ ( product_snd_int_int @ X ) ) ) ) ) ) ) ).

% plus_rat.abs_eq
thf(fact_7742_inverse__rat_Oabs__eq,axiom,
    ! [X: product_prod_int_int] :
      ( ( ratrel @ X @ X )
     => ( ( inverse_inverse_rat @ ( abs_Rat @ X ) )
        = ( abs_Rat
          @ ( if_Pro3027730157355071871nt_int
            @ ( ( product_fst_int_int @ X )
              = zero_zero_int )
            @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
            @ ( product_Pair_int_int @ ( product_snd_int_int @ X ) @ ( product_fst_int_int @ X ) ) ) ) ) ) ).

% inverse_rat.abs_eq
thf(fact_7743_one__rat_Orsp,axiom,
    ratrel @ ( product_Pair_int_int @ one_one_int @ one_one_int ) @ ( product_Pair_int_int @ one_one_int @ one_one_int ) ).

% one_rat.rsp
thf(fact_7744_zero__rat_Orsp,axiom,
    ratrel @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) ).

% zero_rat.rsp
thf(fact_7745_Fract_Orsp,axiom,
    ( bNF_re157797125943740599nt_int
    @ ^ [Y5: int,Z2: int] : Y5 = Z2
    @ ( bNF_re6250860962936578807nt_int
      @ ^ [Y5: int,Z2: int] : Y5 = Z2
      @ ratrel )
    @ ^ [A4: int,B4: int] : ( if_Pro3027730157355071871nt_int @ ( B4 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ A4 @ B4 ) )
    @ ^ [A4: int,B4: int] : ( if_Pro3027730157355071871nt_int @ ( B4 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ A4 @ B4 ) ) ) ).

% Fract.rsp
thf(fact_7746_ratrel__def,axiom,
    ( ratrel
    = ( ^ [X4: product_prod_int_int,Y: product_prod_int_int] :
          ( ( ( product_snd_int_int @ X4 )
           != zero_zero_int )
          & ( ( product_snd_int_int @ Y )
           != zero_zero_int )
          & ( ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ Y ) )
            = ( times_times_int @ ( product_fst_int_int @ Y ) @ ( product_snd_int_int @ X4 ) ) ) ) ) ) ).

% ratrel_def
thf(fact_7747_times__rat_Orsp,axiom,
    ( bNF_re5228765855967844073nt_int @ ratrel @ ( bNF_re7145576690424134365nt_int @ ratrel @ ratrel )
    @ ^ [X4: product_prod_int_int,Y: product_prod_int_int] : ( product_Pair_int_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_fst_int_int @ Y ) ) @ ( times_times_int @ ( product_snd_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) )
    @ ^ [X4: product_prod_int_int,Y: product_prod_int_int] : ( product_Pair_int_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_fst_int_int @ Y ) ) @ ( times_times_int @ ( product_snd_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) ) ) ).

% times_rat.rsp
thf(fact_7748_uminus__rat_Orsp,axiom,
    ( bNF_re7145576690424134365nt_int @ ratrel @ ratrel
    @ ^ [X4: product_prod_int_int] : ( product_Pair_int_int @ ( uminus_uminus_int @ ( product_fst_int_int @ X4 ) ) @ ( product_snd_int_int @ X4 ) )
    @ ^ [X4: product_prod_int_int] : ( product_Pair_int_int @ ( uminus_uminus_int @ ( product_fst_int_int @ X4 ) ) @ ( product_snd_int_int @ X4 ) ) ) ).

% uminus_rat.rsp
thf(fact_7749_positive_Orsp,axiom,
    ( bNF_re8699439704749558557nt_o_o @ ratrel
    @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
    @ ^ [X4: product_prod_int_int] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ X4 ) ) )
    @ ^ [X4: product_prod_int_int] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ X4 ) ) ) ) ).

% positive.rsp
thf(fact_7750_inverse__rat_Orsp,axiom,
    ( bNF_re7145576690424134365nt_int @ ratrel @ ratrel
    @ ^ [X4: product_prod_int_int] :
        ( if_Pro3027730157355071871nt_int
        @ ( ( product_fst_int_int @ X4 )
          = zero_zero_int )
        @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
        @ ( product_Pair_int_int @ ( product_snd_int_int @ X4 ) @ ( product_fst_int_int @ X4 ) ) )
    @ ^ [X4: product_prod_int_int] :
        ( if_Pro3027730157355071871nt_int
        @ ( ( product_fst_int_int @ X4 )
          = zero_zero_int )
        @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
        @ ( product_Pair_int_int @ ( product_snd_int_int @ X4 ) @ ( product_fst_int_int @ X4 ) ) ) ) ).

% inverse_rat.rsp
thf(fact_7751_plus__rat_Orsp,axiom,
    ( bNF_re5228765855967844073nt_int @ ratrel @ ( bNF_re7145576690424134365nt_int @ ratrel @ ratrel )
    @ ^ [X4: product_prod_int_int,Y: product_prod_int_int] : ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) @ ( times_times_int @ ( product_fst_int_int @ Y ) @ ( product_snd_int_int @ X4 ) ) ) @ ( times_times_int @ ( product_snd_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) )
    @ ^ [X4: product_prod_int_int,Y: product_prod_int_int] : ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) @ ( times_times_int @ ( product_fst_int_int @ Y ) @ ( product_snd_int_int @ X4 ) ) ) @ ( times_times_int @ ( product_snd_int_int @ X4 ) @ ( product_snd_int_int @ Y ) ) ) ) ).

% plus_rat.rsp
thf(fact_7752_uminus__rat_Oabs__eq,axiom,
    ! [X: product_prod_int_int] :
      ( ( ratrel @ X @ X )
     => ( ( uminus_uminus_rat @ ( abs_Rat @ X ) )
        = ( abs_Rat @ ( product_Pair_int_int @ ( uminus_uminus_int @ ( product_fst_int_int @ X ) ) @ ( product_snd_int_int @ X ) ) ) ) ) ).

% uminus_rat.abs_eq
thf(fact_7753_times__rat_Oabs__eq,axiom,
    ! [Xa: product_prod_int_int,X: product_prod_int_int] :
      ( ( ratrel @ Xa @ Xa )
     => ( ( ratrel @ X @ X )
       => ( ( times_times_rat @ ( abs_Rat @ Xa ) @ ( abs_Rat @ X ) )
          = ( abs_Rat @ ( product_Pair_int_int @ ( times_times_int @ ( product_fst_int_int @ Xa ) @ ( product_fst_int_int @ X ) ) @ ( times_times_int @ ( product_snd_int_int @ Xa ) @ ( product_snd_int_int @ X ) ) ) ) ) ) ) ).

% times_rat.abs_eq
thf(fact_7754_cr__rat__def,axiom,
    ( cr_rat
    = ( ^ [X4: product_prod_int_int,Y: rat] :
          ( ( ratrel @ X4 @ X4 )
          & ( ( abs_Rat @ X4 )
            = Y ) ) ) ) ).

% cr_rat_def
thf(fact_7755_times__int_Orsp,axiom,
    ( bNF_re3099431351363272937at_nat @ intrel @ ( bNF_re2241393799969408733at_nat @ intrel @ intrel )
    @ ( produc27273713700761075at_nat
      @ ^ [X4: nat,Y: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X4 @ U2 ) @ ( times_times_nat @ Y @ V5 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X4 @ V5 ) @ ( times_times_nat @ Y @ U2 ) ) ) ) )
    @ ( produc27273713700761075at_nat
      @ ^ [X4: nat,Y: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X4 @ U2 ) @ ( times_times_nat @ Y @ V5 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X4 @ V5 ) @ ( times_times_nat @ Y @ U2 ) ) ) ) ) ) ).

% times_int.rsp
thf(fact_7756_Suc__funpow,axiom,
    ! [N: nat] :
      ( ( compow_nat_nat @ N @ suc )
      = ( plus_plus_nat @ N ) ) ).

% Suc_funpow
thf(fact_7757_intrel__iff,axiom,
    ! [X: nat,Y3: nat,U: nat,V: nat] :
      ( ( intrel @ ( product_Pair_nat_nat @ X @ Y3 ) @ ( product_Pair_nat_nat @ U @ V ) )
      = ( ( plus_plus_nat @ X @ V )
        = ( plus_plus_nat @ U @ Y3 ) ) ) ).

% intrel_iff
thf(fact_7758_int_Oabs__eq__iff,axiom,
    ! [X: product_prod_nat_nat,Y3: product_prod_nat_nat] :
      ( ( ( abs_Integ @ X )
        = ( abs_Integ @ Y3 ) )
      = ( intrel @ X @ Y3 ) ) ).

% int.abs_eq_iff
thf(fact_7759_zero__int_Orsp,axiom,
    intrel @ ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) @ ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) ).

% zero_int.rsp
thf(fact_7760_uminus__int_Orsp,axiom,
    ( bNF_re2241393799969408733at_nat @ intrel @ intrel
    @ ( produc2626176000494625587at_nat
      @ ^ [X4: nat,Y: nat] : ( product_Pair_nat_nat @ Y @ X4 ) )
    @ ( produc2626176000494625587at_nat
      @ ^ [X4: nat,Y: nat] : ( product_Pair_nat_nat @ Y @ X4 ) ) ) ).

% uminus_int.rsp
thf(fact_7761_nat_Orsp,axiom,
    ( bNF_re8246922863344978751at_nat @ intrel
    @ ^ [Y5: nat,Z2: nat] : Y5 = Z2
    @ ( produc6842872674320459806at_nat @ minus_minus_nat )
    @ ( produc6842872674320459806at_nat @ minus_minus_nat ) ) ).

% nat.rsp
thf(fact_7762_one__int_Orsp,axiom,
    intrel @ ( product_Pair_nat_nat @ one_one_nat @ zero_zero_nat ) @ ( product_Pair_nat_nat @ one_one_nat @ zero_zero_nat ) ).

% one_int.rsp
thf(fact_7763_intrel__def,axiom,
    ( intrel
    = ( produc8739625826339149834_nat_o
      @ ^ [X4: nat,Y: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V5: nat] :
              ( ( plus_plus_nat @ X4 @ V5 )
              = ( plus_plus_nat @ U2 @ Y ) ) ) ) ) ).

% intrel_def
thf(fact_7764_less__int_Orsp,axiom,
    ( bNF_re4202695980764964119_nat_o @ intrel
    @ ( bNF_re3666534408544137501at_o_o @ intrel
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2 )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X4: nat,Y: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V5: nat] : ( ord_less_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ U2 @ Y ) ) ) )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X4: nat,Y: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V5: nat] : ( ord_less_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ U2 @ Y ) ) ) ) ) ).

% less_int.rsp
thf(fact_7765_int_Orel__eq__transfer,axiom,
    ( bNF_re717283939379294677_int_o @ pcr_int
    @ ( bNF_re6644619430987730960nt_o_o @ pcr_int
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2 )
    @ intrel
    @ ^ [Y5: int,Z2: int] : Y5 = Z2 ) ).

% int.rel_eq_transfer
thf(fact_7766_less__eq__int_Orsp,axiom,
    ( bNF_re4202695980764964119_nat_o @ intrel
    @ ( bNF_re3666534408544137501at_o_o @ intrel
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2 )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X4: nat,Y: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V5: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ U2 @ Y ) ) ) )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X4: nat,Y: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V5: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ U2 @ Y ) ) ) ) ) ).

% less_eq_int.rsp
thf(fact_7767_minus__int_Orsp,axiom,
    ( bNF_re3099431351363272937at_nat @ intrel @ ( bNF_re2241393799969408733at_nat @ intrel @ intrel )
    @ ( produc27273713700761075at_nat
      @ ^ [X4: nat,Y: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ Y @ U2 ) ) ) )
    @ ( produc27273713700761075at_nat
      @ ^ [X4: nat,Y: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ V5 ) @ ( plus_plus_nat @ Y @ U2 ) ) ) ) ) ).

% minus_int.rsp
thf(fact_7768_plus__int_Orsp,axiom,
    ( bNF_re3099431351363272937at_nat @ intrel @ ( bNF_re2241393799969408733at_nat @ intrel @ intrel )
    @ ( produc27273713700761075at_nat
      @ ^ [X4: nat,Y: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ U2 ) @ ( plus_plus_nat @ Y @ V5 ) ) ) )
    @ ( produc27273713700761075at_nat
      @ ^ [X4: nat,Y: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V5: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X4 @ U2 ) @ ( plus_plus_nat @ Y @ V5 ) ) ) ) ) ).

% plus_int.rsp
thf(fact_7769_less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ M @ N ) @ ( transi6264000038957366511cl_nat @ pred_nat ) )
      = ( ord_less_nat @ M @ N ) ) ).

% less_eq
thf(fact_7770_pred__nat__trancl__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ M @ N ) @ ( transi2905341329935302413cl_nat @ pred_nat ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% pred_nat_trancl_eq_le
thf(fact_7771_upto_Opelims,axiom,
    ! [X: int,Xa: int,Y3: list_int] :
      ( ( ( upto @ X @ Xa )
        = Y3 )
     => ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ X @ Xa ) )
       => ~ ( ( ( ( ord_less_eq_int @ X @ Xa )
               => ( Y3
                  = ( cons_int @ X @ ( upto @ ( plus_plus_int @ X @ one_one_int ) @ Xa ) ) ) )
              & ( ~ ( ord_less_eq_int @ X @ Xa )
               => ( Y3 = nil_int ) ) )
           => ~ ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ X @ Xa ) ) ) ) ) ).

% upto.pelims
thf(fact_7772_upto_Opsimps,axiom,
    ! [I: int,J: int] :
      ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ I @ J ) )
     => ( ( ( ord_less_eq_int @ I @ J )
         => ( ( upto @ I @ J )
            = ( cons_int @ I @ ( upto @ ( plus_plus_int @ I @ one_one_int ) @ J ) ) ) )
        & ( ~ ( ord_less_eq_int @ I @ J )
         => ( ( upto @ I @ J )
            = nil_int ) ) ) ) ).

% upto.psimps
thf(fact_7773_list__encode_Oelims,axiom,
    ! [X: list_nat,Y3: nat] :
      ( ( ( nat_list_encode @ X )
        = Y3 )
     => ( ( ( X = nil_nat )
         => ( Y3 != zero_zero_nat ) )
       => ~ ! [X5: nat,Xs3: list_nat] :
              ( ( X
                = ( cons_nat @ X5 @ Xs3 ) )
             => ( Y3
               != ( suc @ ( nat_prod_encode @ ( product_Pair_nat_nat @ X5 @ ( nat_list_encode @ Xs3 ) ) ) ) ) ) ) ) ).

% list_encode.elims
thf(fact_7774_list__encode_Osimps_I1_J,axiom,
    ( ( nat_list_encode @ nil_nat )
    = zero_zero_nat ) ).

% list_encode.simps(1)
thf(fact_7775_list__encode_Osimps_I2_J,axiom,
    ! [X: nat,Xs2: list_nat] :
      ( ( nat_list_encode @ ( cons_nat @ X @ Xs2 ) )
      = ( suc @ ( nat_prod_encode @ ( product_Pair_nat_nat @ X @ ( nat_list_encode @ Xs2 ) ) ) ) ) ).

% list_encode.simps(2)
thf(fact_7776_inj__Suc,axiom,
    ! [N6: set_nat] : ( inj_on_nat_nat @ suc @ N6 ) ).

% inj_Suc
thf(fact_7777_inj__on__diff__nat,axiom,
    ! [N6: set_nat,K: nat] :
      ( ! [N2: nat] :
          ( ( member_nat @ N2 @ N6 )
         => ( ord_less_eq_nat @ K @ N2 ) )
     => ( inj_on_nat_nat
        @ ^ [N5: nat] : ( minus_minus_nat @ N5 @ K )
        @ N6 ) ) ).

% inj_on_diff_nat
thf(fact_7778_list__encode_Opelims,axiom,
    ! [X: list_nat,Y3: nat] :
      ( ( ( nat_list_encode @ X )
        = Y3 )
     => ( ( accp_list_nat @ nat_list_encode_rel @ X )
       => ( ( ( X = nil_nat )
           => ( ( Y3 = zero_zero_nat )
             => ~ ( accp_list_nat @ nat_list_encode_rel @ nil_nat ) ) )
         => ~ ! [X5: nat,Xs3: list_nat] :
                ( ( X
                  = ( cons_nat @ X5 @ Xs3 ) )
               => ( ( Y3
                    = ( suc @ ( nat_prod_encode @ ( product_Pair_nat_nat @ X5 @ ( nat_list_encode @ Xs3 ) ) ) ) )
                 => ~ ( accp_list_nat @ nat_list_encode_rel @ ( cons_nat @ X5 @ Xs3 ) ) ) ) ) ) ) ).

% list_encode.pelims
thf(fact_7779_wf__int__ge__less__than,axiom,
    ! [D: int] : ( wf_int @ ( int_ge_less_than @ D ) ) ).

% wf_int_ge_less_than
thf(fact_7780_wf__int__ge__less__than2,axiom,
    ! [D: int] : ( wf_int @ ( int_ge_less_than2 @ D ) ) ).

% wf_int_ge_less_than2
thf(fact_7781_wf__less,axiom,
    wf_nat @ ( collec3392354462482085612at_nat @ ( produc6081775807080527818_nat_o @ ord_less_nat ) ) ).

% wf_less
thf(fact_7782_vimage__Suc__insert__0,axiom,
    ! [A3: set_nat] :
      ( ( vimage_nat_nat @ suc @ ( insert_nat @ zero_zero_nat @ A3 ) )
      = ( vimage_nat_nat @ suc @ A3 ) ) ).

% vimage_Suc_insert_0
thf(fact_7783_card__length__sum__list__rec,axiom,
    ! [M: nat,N6: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ M )
     => ( ( finite_card_list_nat
          @ ( collect_list_nat
            @ ^ [L4: list_nat] :
                ( ( ( size_size_list_nat @ L4 )
                  = M )
                & ( ( groups4561878855575611511st_nat @ L4 )
                  = N6 ) ) ) )
        = ( plus_plus_nat
          @ ( finite_card_list_nat
            @ ( collect_list_nat
              @ ^ [L4: list_nat] :
                  ( ( ( size_size_list_nat @ L4 )
                    = ( minus_minus_nat @ M @ one_one_nat ) )
                  & ( ( groups4561878855575611511st_nat @ L4 )
                    = N6 ) ) ) )
          @ ( finite_card_list_nat
            @ ( collect_list_nat
              @ ^ [L4: list_nat] :
                  ( ( ( size_size_list_nat @ L4 )
                    = M )
                  & ( ( plus_plus_nat @ ( groups4561878855575611511st_nat @ L4 ) @ one_one_nat )
                    = N6 ) ) ) ) ) ) ) ).

% card_length_sum_list_rec
thf(fact_7784_card__length__sum__list,axiom,
    ! [M: nat,N6: nat] :
      ( ( finite_card_list_nat
        @ ( collect_list_nat
          @ ^ [L4: list_nat] :
              ( ( ( size_size_list_nat @ L4 )
                = M )
              & ( ( groups4561878855575611511st_nat @ L4 )
                = N6 ) ) ) )
      = ( binomial @ ( minus_minus_nat @ ( plus_plus_nat @ N6 @ M ) @ one_one_nat ) @ N6 ) ) ).

% card_length_sum_list
thf(fact_7785_sum__list__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups4561878855575611511st_nat @ ( upt @ M @ N ) )
        = ( groups3542108847815614940at_nat
          @ ^ [X4: nat] : X4
          @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ) ).

% sum_list_upt
thf(fact_7786_nth__upt,axiom,
    ! [I: nat,K: nat,J: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J )
     => ( ( nth_nat @ ( upt @ I @ J ) @ K )
        = ( plus_plus_nat @ I @ K ) ) ) ).

% nth_upt
thf(fact_7787_take__upt,axiom,
    ! [I: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ M ) @ N )
     => ( ( take_nat @ M @ ( upt @ I @ N ) )
        = ( upt @ I @ ( plus_plus_nat @ I @ M ) ) ) ) ).

% take_upt
thf(fact_7788_upt__eq__Nil__conv,axiom,
    ! [I: nat,J: nat] :
      ( ( ( upt @ I @ J )
        = nil_nat )
      = ( ( J = zero_zero_nat )
        | ( ord_less_eq_nat @ J @ I ) ) ) ).

% upt_eq_Nil_conv
thf(fact_7789_upt__add__eq__append,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( upt @ I @ ( plus_plus_nat @ J @ K ) )
        = ( append_nat @ ( upt @ I @ J ) @ ( upt @ J @ ( plus_plus_nat @ J @ K ) ) ) ) ) ).

% upt_add_eq_append
thf(fact_7790_upt__0,axiom,
    ! [I: nat] :
      ( ( upt @ I @ zero_zero_nat )
      = nil_nat ) ).

% upt_0
thf(fact_7791_atLeast__upt,axiom,
    ( set_ord_lessThan_nat
    = ( ^ [N5: nat] : ( set_nat2 @ ( upt @ zero_zero_nat @ N5 ) ) ) ) ).

% atLeast_upt
thf(fact_7792_upt__eq__Cons__conv,axiom,
    ! [I: nat,J: nat,X: nat,Xs2: list_nat] :
      ( ( ( upt @ I @ J )
        = ( cons_nat @ X @ Xs2 ) )
      = ( ( ord_less_nat @ I @ J )
        & ( I = X )
        & ( ( upt @ ( plus_plus_nat @ I @ one_one_nat ) @ J )
          = Xs2 ) ) ) ).

% upt_eq_Cons_conv
thf(fact_7793_atMost__upto,axiom,
    ( set_ord_atMost_nat
    = ( ^ [N5: nat] : ( set_nat2 @ ( upt @ zero_zero_nat @ ( suc @ N5 ) ) ) ) ) ).

% atMost_upto
thf(fact_7794_map__add__upt,axiom,
    ! [N: nat,M: nat] :
      ( ( map_nat_nat
        @ ^ [I2: nat] : ( plus_plus_nat @ I2 @ N )
        @ ( upt @ zero_zero_nat @ M ) )
      = ( upt @ N @ ( plus_plus_nat @ M @ N ) ) ) ).

% map_add_upt
thf(fact_7795_map__decr__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( map_nat_nat
        @ ^ [N5: nat] : ( minus_minus_nat @ N5 @ ( suc @ zero_zero_nat ) )
        @ ( upt @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( upt @ M @ N ) ) ).

% map_decr_upt
thf(fact_7796_nth__sorted__list__of__set__greaterThanLessThan,axiom,
    ! [N: nat,J: nat,I: nat] :
      ( ( ord_less_nat @ N @ ( minus_minus_nat @ J @ ( suc @ I ) ) )
     => ( ( nth_nat @ ( linord2614967742042102400et_nat @ ( set_or5834768355832116004an_nat @ I @ J ) ) @ N )
        = ( suc @ ( plus_plus_nat @ I @ N ) ) ) ) ).

% nth_sorted_list_of_set_greaterThanLessThan
thf(fact_7797_nth__sorted__list__of__set__greaterThanAtMost,axiom,
    ! [N: nat,J: nat,I: nat] :
      ( ( ord_less_nat @ N @ ( minus_minus_nat @ J @ I ) )
     => ( ( nth_nat @ ( linord2614967742042102400et_nat @ ( set_or6659071591806873216st_nat @ I @ J ) ) @ N )
        = ( suc @ ( plus_plus_nat @ I @ N ) ) ) ) ).

% nth_sorted_list_of_set_greaterThanAtMost
thf(fact_7798_last__upt,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( last_nat @ ( upt @ I @ J ) )
        = ( minus_minus_nat @ J @ one_one_nat ) ) ) ).

% last_upt
thf(fact_7799_Sup__int__def,axiom,
    ( complete_Sup_Sup_int
    = ( ^ [X9: set_int] :
          ( the_int
          @ ^ [X4: int] :
              ( ( member_int @ X4 @ X9 )
              & ! [Y: int] :
                  ( ( member_int @ Y @ X9 )
                 => ( ord_less_eq_int @ Y @ X4 ) ) ) ) ) ) ).

% Sup_int_def
thf(fact_7800_GreatestI__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y4: nat] :
            ( ( P @ Y4 )
           => ( ord_less_eq_nat @ Y4 @ B ) )
       => ( P @ ( order_Greatest_nat @ P ) ) ) ) ).

% GreatestI_nat
thf(fact_7801_Greatest__le__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y4: nat] :
            ( ( P @ Y4 )
           => ( ord_less_eq_nat @ Y4 @ B ) )
       => ( ord_less_eq_nat @ K @ ( order_Greatest_nat @ P ) ) ) ) ).

% Greatest_le_nat
thf(fact_7802_GreatestI__ex__nat,axiom,
    ! [P: nat > $o,B: nat] :
      ( ? [X_1: nat] : ( P @ X_1 )
     => ( ! [Y4: nat] :
            ( ( P @ Y4 )
           => ( ord_less_eq_nat @ Y4 @ B ) )
       => ( P @ ( order_Greatest_nat @ P ) ) ) ) ).

% GreatestI_ex_nat
thf(fact_7803_bij__betw__Suc,axiom,
    ! [M2: set_nat,N6: set_nat] :
      ( ( bij_betw_nat_nat @ suc @ M2 @ N6 )
      = ( ( image_nat_nat @ suc @ M2 )
        = N6 ) ) ).

% bij_betw_Suc
thf(fact_7804_pair__lessI2,axiom,
    ! [A: nat,B: nat,S: nat,T: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ S @ T )
       => ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A @ S ) @ ( product_Pair_nat_nat @ B @ T ) ) @ fun_pair_less ) ) ) ).

% pair_lessI2
thf(fact_7805_pair__less__iff1,axiom,
    ! [X: nat,Y3: nat,Z: nat] :
      ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ X @ Y3 ) @ ( product_Pair_nat_nat @ X @ Z ) ) @ fun_pair_less )
      = ( ord_less_nat @ Y3 @ Z ) ) ).

% pair_less_iff1
thf(fact_7806_pair__lessI1,axiom,
    ! [A: nat,B: nat,S: nat,T: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A @ S ) @ ( product_Pair_nat_nat @ B @ T ) ) @ fun_pair_less ) ) ).

% pair_lessI1
thf(fact_7807_pair__leqI2,axiom,
    ! [A: nat,B: nat,S: nat,T: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ S @ T )
       => ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A @ S ) @ ( product_Pair_nat_nat @ B @ T ) ) @ fun_pair_leq ) ) ) ).

% pair_leqI2
thf(fact_7808_pair__leqI1,axiom,
    ! [A: nat,B: nat,S: nat,T: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A @ S ) @ ( product_Pair_nat_nat @ B @ T ) ) @ fun_pair_leq ) ) ).

% pair_leqI1
thf(fact_7809_wmax__insertI,axiom,
    ! [Y3: product_prod_nat_nat,YS: set_Pr1261947904930325089at_nat,X: product_prod_nat_nat,XS: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ Y3 @ YS )
     => ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ X @ Y3 ) @ fun_pair_leq )
       => ( ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ XS @ YS ) @ fun_max_weak )
         => ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ ( insert8211810215607154385at_nat @ X @ XS ) @ YS ) @ fun_max_weak ) ) ) ) ).

% wmax_insertI
thf(fact_7810_wmin__insertI,axiom,
    ! [X: product_prod_nat_nat,XS: set_Pr1261947904930325089at_nat,Y3: product_prod_nat_nat,YS: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ X @ XS )
     => ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ X @ Y3 ) @ fun_pair_leq )
       => ( ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ XS @ YS ) @ fun_min_weak )
         => ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ XS @ ( insert8211810215607154385at_nat @ Y3 @ YS ) ) @ fun_min_weak ) ) ) ) ).

% wmin_insertI
thf(fact_7811_smin__insertI,axiom,
    ! [X: product_prod_nat_nat,XS: set_Pr1261947904930325089at_nat,Y3: product_prod_nat_nat,YS: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ X @ XS )
     => ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ X @ Y3 ) @ fun_pair_less )
       => ( ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ XS @ YS ) @ fun_min_strict )
         => ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ XS @ ( insert8211810215607154385at_nat @ Y3 @ YS ) ) @ fun_min_strict ) ) ) ) ).

% smin_insertI
thf(fact_7812_min__rpair__set,axiom,
    fun_re2478310338295953701at_nat @ ( produc9060074326276436823at_nat @ fun_min_strict @ fun_min_weak ) ).

% min_rpair_set
thf(fact_7813_wmax__emptyI,axiom,
    ! [X8: set_Pr1261947904930325089at_nat] :
      ( ( finite6177210948735845034at_nat @ X8 )
     => ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ bot_bo2099793752762293965at_nat @ X8 ) @ fun_max_weak ) ) ).

% wmax_emptyI
thf(fact_7814_smin__emptyI,axiom,
    ! [X8: set_Pr1261947904930325089at_nat] :
      ( ( X8 != bot_bo2099793752762293965at_nat )
     => ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ X8 @ bot_bo2099793752762293965at_nat ) @ fun_min_strict ) ) ).

% smin_emptyI
thf(fact_7815_wmin__emptyI,axiom,
    ! [X8: set_Pr1261947904930325089at_nat] : ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ X8 @ bot_bo2099793752762293965at_nat ) @ fun_min_weak ) ).

% wmin_emptyI
thf(fact_7816_min__weak__def,axiom,
    ( fun_min_weak
    = ( sup_su5525570899277871387at_nat @ ( min_ex6901939911449802026at_nat @ fun_pair_leq ) @ ( insert9069300056098147895at_nat @ ( produc2922128104949294807at_nat @ bot_bo2099793752762293965at_nat @ bot_bo2099793752762293965at_nat ) @ bot_bo228742789529271731at_nat ) ) ) ).

% min_weak_def
thf(fact_7817_max__weak__def,axiom,
    ( fun_max_weak
    = ( sup_su5525570899277871387at_nat @ ( max_ex8135407076693332796at_nat @ fun_pair_leq ) @ ( insert9069300056098147895at_nat @ ( produc2922128104949294807at_nat @ bot_bo2099793752762293965at_nat @ bot_bo2099793752762293965at_nat ) @ bot_bo228742789529271731at_nat ) ) ) ).

% max_weak_def
thf(fact_7818_smax__insertI,axiom,
    ! [Y3: product_prod_nat_nat,Y7: set_Pr1261947904930325089at_nat,X: product_prod_nat_nat,X8: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ Y3 @ Y7 )
     => ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ X @ Y3 ) @ fun_pair_less )
       => ( ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ X8 @ Y7 ) @ fun_max_strict )
         => ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ ( insert8211810215607154385at_nat @ X @ X8 ) @ Y7 ) @ fun_max_strict ) ) ) ) ).

% smax_insertI
thf(fact_7819_smax__emptyI,axiom,
    ! [Y7: set_Pr1261947904930325089at_nat] :
      ( ( finite6177210948735845034at_nat @ Y7 )
     => ( ( Y7 != bot_bo2099793752762293965at_nat )
       => ( member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ bot_bo2099793752762293965at_nat @ Y7 ) @ fun_max_strict ) ) ) ).

% smax_emptyI
thf(fact_7820_natLeq__on__wo__rel,axiom,
    ! [N: nat] :
      ( bNF_We3818239936649020644el_nat
      @ ( collec3392354462482085612at_nat
        @ ( produc6081775807080527818_nat_o
          @ ^ [X4: nat,Y: nat] :
              ( ( ord_less_nat @ X4 @ N )
              & ( ord_less_nat @ Y @ N )
              & ( ord_less_eq_nat @ X4 @ Y ) ) ) ) ) ).

% natLeq_on_wo_rel
thf(fact_7821_max__rpair__set,axiom,
    fun_re2478310338295953701at_nat @ ( produc9060074326276436823at_nat @ fun_max_strict @ fun_max_weak ) ).

% max_rpair_set
thf(fact_7822_char_Osize_I2_J,axiom,
    ! [X1: $o,X2: $o,X32: $o,X42: $o,X52: $o,X62: $o,X72: $o,X82: $o] :
      ( ( size_size_char @ ( char2 @ X1 @ X2 @ X32 @ X42 @ X52 @ X62 @ X72 @ X82 ) )
      = zero_zero_nat ) ).

% char.size(2)
thf(fact_7823_inj__on__char__of__nat,axiom,
    inj_on_nat_char @ unique3096191561947761185of_nat @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% inj_on_char_of_nat
thf(fact_7824_UNIV__char__of__nat,axiom,
    ( top_top_set_char
    = ( image_nat_char @ unique3096191561947761185of_nat @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ).

% UNIV_char_of_nat
thf(fact_7825_char_Osize__gen,axiom,
    ! [X1: $o,X2: $o,X32: $o,X42: $o,X52: $o,X62: $o,X72: $o,X82: $o] :
      ( ( size_char @ ( char2 @ X1 @ X2 @ X32 @ X42 @ X52 @ X62 @ X72 @ X82 ) )
      = zero_zero_nat ) ).

% char.size_gen
thf(fact_7826_range__nat__of__char,axiom,
    ( ( image_char_nat @ comm_s629917340098488124ar_nat @ top_top_set_char )
    = ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ).

% range_nat_of_char
thf(fact_7827_gcd__nat_Oordering__top__axioms,axiom,
    ( ordering_top_nat @ dvd_dvd_nat
    @ ^ [M5: nat,N5: nat] :
        ( ( dvd_dvd_nat @ M5 @ N5 )
        & ( M5 != N5 ) )
    @ zero_zero_nat ) ).

% gcd_nat.ordering_top_axioms
thf(fact_7828_euclidean__size__int__def,axiom,
    ( euclid4774559944035922753ze_int
    = ( comp_int_nat_int @ nat2 @ abs_abs_int ) ) ).

% euclidean_size_int_def
thf(fact_7829_bot__nat__0_Oordering__top__axioms,axiom,
    ( ordering_top_nat
    @ ^ [X4: nat,Y: nat] : ( ord_less_eq_nat @ Y @ X4 )
    @ ^ [X4: nat,Y: nat] : ( ord_less_nat @ Y @ X4 )
    @ zero_zero_nat ) ).

% bot_nat_0.ordering_top_axioms
thf(fact_7830_division__segment__nat__def,axiom,
    ( euclid3398187327856392827nt_nat
    = ( ^ [N5: nat] : one_one_nat ) ) ).

% division_segment_nat_def
thf(fact_7831_eventually__sequentially__Suc,axiom,
    ! [P: nat > $o] :
      ( ( eventually_nat
        @ ^ [I2: nat] : ( P @ ( suc @ I2 ) )
        @ at_top_nat )
      = ( eventually_nat @ P @ at_top_nat ) ) ).

% eventually_sequentially_Suc
thf(fact_7832_eventually__sequentially__seg,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( eventually_nat
        @ ^ [N5: nat] : ( P @ ( plus_plus_nat @ N5 @ K ) )
        @ at_top_nat )
      = ( eventually_nat @ P @ at_top_nat ) ) ).

% eventually_sequentially_seg
thf(fact_7833_le__sequentially,axiom,
    ! [F4: filter_nat] :
      ( ( ord_le2510731241096832064er_nat @ F4 @ at_top_nat )
      = ( ! [N8: nat] : ( eventually_nat @ ( ord_less_eq_nat @ N8 ) @ F4 ) ) ) ).

% le_sequentially
thf(fact_7834_filterlim__atMost__at__top,axiom,
    filter3212408913953519116et_nat @ set_ord_atMost_nat @ ( finite3254316476582989077op_nat @ top_top_set_nat ) @ at_top_nat ).

% filterlim_atMost_at_top
thf(fact_7835_filterlim__lessThan__at__top,axiom,
    filter3212408913953519116et_nat @ set_ord_lessThan_nat @ ( finite3254316476582989077op_nat @ top_top_set_nat ) @ at_top_nat ).

% filterlim_lessThan_at_top
thf(fact_7836_atLeast__0,axiom,
    ( ( set_ord_atLeast_nat @ zero_zero_nat )
    = top_top_set_nat ) ).

% atLeast_0
thf(fact_7837_eventually__False__sequentially,axiom,
    ~ ( eventually_nat
      @ ^ [N5: nat] : $false
      @ at_top_nat ) ).

% eventually_False_sequentially
thf(fact_7838_UN__atLeast__UNIV,axiom,
    ( ( comple7399068483239264473et_nat @ ( image_nat_set_nat @ set_ord_atLeast_nat @ top_top_set_nat ) )
    = top_top_set_nat ) ).

% UN_atLeast_UNIV
thf(fact_7839_prod__decode__triangle__add,axiom,
    ! [K: nat,M: nat] :
      ( ( nat_prod_decode @ ( plus_plus_nat @ ( nat_triangle @ K ) @ M ) )
      = ( nat_prod_decode_aux @ K @ M ) ) ).

% prod_decode_triangle_add
thf(fact_7840_prod__decode__def,axiom,
    ( nat_prod_decode
    = ( nat_prod_decode_aux @ zero_zero_nat ) ) ).

% prod_decode_def
thf(fact_7841_list__decode_Oelims,axiom,
    ! [X: nat,Y3: list_nat] :
      ( ( ( nat_list_decode @ X )
        = Y3 )
     => ( ( ( X = zero_zero_nat )
         => ( Y3 != nil_nat ) )
       => ~ ! [N2: nat] :
              ( ( X
                = ( suc @ N2 ) )
             => ( Y3
               != ( produc2761476792215241774st_nat
                  @ ^ [X4: nat,Y: nat] : ( cons_nat @ X4 @ ( nat_list_decode @ Y ) )
                  @ ( nat_prod_decode @ N2 ) ) ) ) ) ) ).

% list_decode.elims
thf(fact_7842_list__decode_Osimps_I1_J,axiom,
    ( ( nat_list_decode @ zero_zero_nat )
    = nil_nat ) ).

% list_decode.simps(1)
thf(fact_7843_list__decode_Osimps_I2_J,axiom,
    ! [N: nat] :
      ( ( nat_list_decode @ ( suc @ N ) )
      = ( produc2761476792215241774st_nat
        @ ^ [X4: nat,Y: nat] : ( cons_nat @ X4 @ ( nat_list_decode @ Y ) )
        @ ( nat_prod_decode @ N ) ) ) ).

% list_decode.simps(2)
thf(fact_7844_list__decode_Opelims,axiom,
    ! [X: nat,Y3: list_nat] :
      ( ( ( nat_list_decode @ X )
        = Y3 )
     => ( ( accp_nat @ nat_list_decode_rel @ X )
       => ( ( ( X = zero_zero_nat )
           => ( ( Y3 = nil_nat )
             => ~ ( accp_nat @ nat_list_decode_rel @ zero_zero_nat ) ) )
         => ~ ! [N2: nat] :
                ( ( X
                  = ( suc @ N2 ) )
               => ( ( Y3
                    = ( produc2761476792215241774st_nat
                      @ ^ [X4: nat,Y: nat] : ( cons_nat @ X4 @ ( nat_list_decode @ Y ) )
                      @ ( nat_prod_decode @ N2 ) ) )
                 => ~ ( accp_nat @ nat_list_decode_rel @ ( suc @ N2 ) ) ) ) ) ) ) ).

% list_decode.pelims
thf(fact_7845_list__decode_Opsimps_I1_J,axiom,
    ( ( accp_nat @ nat_list_decode_rel @ zero_zero_nat )
   => ( ( nat_list_decode @ zero_zero_nat )
      = nil_nat ) ) ).

% list_decode.psimps(1)
thf(fact_7846_list__decode_Opinduct,axiom,
    ! [A0: nat,P: nat > $o] :
      ( ( accp_nat @ nat_list_decode_rel @ A0 )
     => ( ( ( accp_nat @ nat_list_decode_rel @ zero_zero_nat )
         => ( P @ zero_zero_nat ) )
       => ( ! [N2: nat] :
              ( ( accp_nat @ nat_list_decode_rel @ ( suc @ N2 ) )
             => ( ! [X6: nat,Y6: nat] :
                    ( ( ( product_Pair_nat_nat @ X6 @ Y6 )
                      = ( nat_prod_decode @ N2 ) )
                   => ( P @ Y6 ) )
               => ( P @ ( suc @ N2 ) ) ) )
         => ( P @ A0 ) ) ) ) ).

% list_decode.pinduct
thf(fact_7847_list__decode_Opsimps_I2_J,axiom,
    ! [N: nat] :
      ( ( accp_nat @ nat_list_decode_rel @ ( suc @ N ) )
     => ( ( nat_list_decode @ ( suc @ N ) )
        = ( produc2761476792215241774st_nat
          @ ^ [X4: nat,Y: nat] : ( cons_nat @ X4 @ ( nat_list_decode @ Y ) )
          @ ( nat_prod_decode @ N ) ) ) ) ).

% list_decode.psimps(2)
thf(fact_7848_natLeq__on__well__order__on,axiom,
    ! [N: nat] :
      ( order_2888998067076097458on_nat
      @ ( collect_nat
        @ ^ [X4: nat] : ( ord_less_nat @ X4 @ N ) )
      @ ( collec3392354462482085612at_nat
        @ ( produc6081775807080527818_nat_o
          @ ^ [X4: nat,Y: nat] :
              ( ( ord_less_nat @ X4 @ N )
              & ( ord_less_nat @ Y @ N )
              & ( ord_less_eq_nat @ X4 @ Y ) ) ) ) ) ).

% natLeq_on_well_order_on
thf(fact_7849_natLeq__on__Well__order,axiom,
    ! [N: nat] :
      ( order_2888998067076097458on_nat
      @ ( field_nat
        @ ( collec3392354462482085612at_nat
          @ ( produc6081775807080527818_nat_o
            @ ^ [X4: nat,Y: nat] :
                ( ( ord_less_nat @ X4 @ N )
                & ( ord_less_nat @ Y @ N )
                & ( ord_less_eq_nat @ X4 @ Y ) ) ) ) )
      @ ( collec3392354462482085612at_nat
        @ ( produc6081775807080527818_nat_o
          @ ^ [X4: nat,Y: nat] :
              ( ( ord_less_nat @ X4 @ N )
              & ( ord_less_nat @ Y @ N )
              & ( ord_less_eq_nat @ X4 @ Y ) ) ) ) ) ).

% natLeq_on_Well_order
thf(fact_7850_ctwo__Cnotzero,axiom,
    ( ~ ( member444158400953824016od_o_o @ ( produc763777882069021527od_o_o @ bNF_Cardinal_ctwo @ bNF_Cardinal_czero_o ) @ bNF_We2654380646378065620so_o_o )
    & ( bNF_Ca8331644756375544342r_on_o @ ( field_o @ bNF_Cardinal_ctwo ) @ bNF_Cardinal_ctwo ) ) ).

% ctwo_Cnotzero
thf(fact_7851_ctwo__ordLess__natLeq,axiom,
    member4095101504841534314at_nat @ ( produc8517790099723286449at_nat @ bNF_Cardinal_ctwo @ bNF_Ca8665028551170535155natLeq ) @ bNF_We8182288985678559134_o_nat ).

% ctwo_ordLess_natLeq
thf(fact_7852_natLeq__underS__less,axiom,
    ! [N: nat] :
      ( ( order_underS_nat @ bNF_Ca8665028551170535155natLeq @ N )
      = ( collect_nat
        @ ^ [X4: nat] : ( ord_less_nat @ X4 @ N ) ) ) ).

% natLeq_underS_less
thf(fact_7853_natLeq__def,axiom,
    ( bNF_Ca8665028551170535155natLeq
    = ( collec3392354462482085612at_nat @ ( produc6081775807080527818_nat_o @ ord_less_eq_nat ) ) ) ).

% natLeq_def
thf(fact_7854_Restr__natLeq2,axiom,
    ! [N: nat] :
      ( ( inf_in2572325071724192079at_nat @ bNF_Ca8665028551170535155natLeq
        @ ( produc457027306803732586at_nat @ ( order_underS_nat @ bNF_Ca8665028551170535155natLeq @ N )
          @ ^ [Uu: nat] : ( order_underS_nat @ bNF_Ca8665028551170535155natLeq @ N ) ) )
      = ( collec3392354462482085612at_nat
        @ ( produc6081775807080527818_nat_o
          @ ^ [X4: nat,Y: nat] :
              ( ( ord_less_nat @ X4 @ N )
              & ( ord_less_nat @ Y @ N )
              & ( ord_less_eq_nat @ X4 @ Y ) ) ) ) ) ).

% Restr_natLeq2
thf(fact_7855_Restr__natLeq,axiom,
    ! [N: nat] :
      ( ( inf_in2572325071724192079at_nat @ bNF_Ca8665028551170535155natLeq
        @ ( produc457027306803732586at_nat
          @ ( collect_nat
            @ ^ [X4: nat] : ( ord_less_nat @ X4 @ N ) )
          @ ^ [Uu: nat] :
              ( collect_nat
              @ ^ [X4: nat] : ( ord_less_nat @ X4 @ N ) ) ) )
      = ( collec3392354462482085612at_nat
        @ ( produc6081775807080527818_nat_o
          @ ^ [X4: nat,Y: nat] :
              ( ( ord_less_nat @ X4 @ N )
              & ( ord_less_nat @ Y @ N )
              & ( ord_less_eq_nat @ X4 @ Y ) ) ) ) ) ).

% Restr_natLeq
thf(fact_7856_card__of__nat,axiom,
    member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ ( bNF_Ca3793111618940312692of_nat @ top_top_set_nat ) @ bNF_Ca8665028551170535155natLeq ) @ bNF_We5258908940166488438at_nat ).

% card_of_nat
thf(fact_7857_card__of__Field__natLeq,axiom,
    member8757157785044589968at_nat @ ( produc2922128104949294807at_nat @ ( bNF_Ca3793111618940312692of_nat @ ( field_nat @ bNF_Ca8665028551170535155natLeq ) ) @ bNF_Ca8665028551170535155natLeq ) @ bNF_We5258908940166488438at_nat ).

% card_of_Field_natLeq
thf(fact_7858_num__of__integer_Otransfer,axiom,
    ( bNF_re6718328864250387230um_num @ code_pcr_integer
    @ ^ [Y5: num,Z2: num] : Y5 = Z2
    @ ( comp_nat_num_int @ num_of_nat @ nat2 )
    @ code_num_of_integer ) ).

% num_of_integer.transfer
thf(fact_7859_integer_Oid__abs__transfer,axiom,
    ( bNF_re982302072995117890nteger
    @ ^ [Y5: int,Z2: int] : Y5 = Z2
    @ code_pcr_integer
    @ ^ [X4: int] : X4
    @ code_integer_of_int ) ).

% integer.id_abs_transfer
thf(fact_7860_integer_Orep__transfer,axiom,
    ( bNF_re3804157879324367682nt_int @ code_pcr_integer
    @ ^ [Y5: int,Z2: int] : Y5 = Z2
    @ ^ [X4: int] : X4
    @ code_int_of_integer ) ).

% integer.rep_transfer
thf(fact_7861_gcd__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ gcd_gcd_int @ gcd_gcd_Code_integer ).

% gcd_integer.transfer
thf(fact_7862_dup_Otransfer,axiom,
    ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer
    @ ^ [K3: int] : ( plus_plus_int @ K3 @ K3 )
    @ code_dup ) ).

% dup.transfer
thf(fact_7863_sub_Otransfer,axiom,
    ( bNF_re7876454716742015248nteger
    @ ^ [Y5: num,Z2: num] : Y5 = Z2
    @ ( bNF_re6501075790457514782nteger
      @ ^ [Y5: num,Z2: num] : Y5 = Z2
      @ code_pcr_integer )
    @ ^ [M5: num,N5: num] : ( minus_minus_int @ ( numeral_numeral_int @ M5 ) @ ( numeral_numeral_int @ N5 ) )
    @ code_sub ) ).

% sub.transfer
thf(fact_7864_eventually__prod__sequentially,axiom,
    ! [P: product_prod_nat_nat > $o] :
      ( ( eventu1038000079068216329at_nat @ P @ ( prod_filter_nat_nat @ at_top_nat @ at_top_nat ) )
      = ( ? [N8: nat] :
          ! [M5: nat] :
            ( ( ord_less_eq_nat @ N8 @ M5 )
           => ! [N5: nat] :
                ( ( ord_less_eq_nat @ N8 @ N5 )
               => ( P @ ( product_Pair_nat_nat @ N5 @ M5 ) ) ) ) ) ) ).

% eventually_prod_sequentially
thf(fact_7865_less__than__iff,axiom,
    ! [X: nat,Y3: nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y3 ) @ less_than )
      = ( ord_less_nat @ X @ Y3 ) ) ).

% less_than_iff
thf(fact_7866_sort__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( linord738340561235409698at_nat
        @ ^ [X4: nat] : X4
        @ ( upt @ M @ N ) )
      = ( upt @ M @ N ) ) ).

% sort_upt
thf(fact_7867_sort__upto,axiom,
    ! [I: int,J: int] :
      ( ( linord1735203802627413978nt_int
        @ ^ [X4: int] : X4
        @ ( upto @ I @ J ) )
      = ( upto @ I @ J ) ) ).

% sort_upto
thf(fact_7868_int_Oid__abs__transfer,axiom,
    ( bNF_re7934895593101944656at_int
    @ ( basic_5328504652464829177at_nat
      @ ^ [Y5: nat,Z2: nat] : Y5 = Z2
      @ ^ [Y5: nat,Z2: nat] : Y5 = Z2 )
    @ pcr_int
    @ ^ [X4: product_prod_nat_nat] : X4
    @ abs_Integ ) ).

% int.id_abs_transfer
thf(fact_7869_pcr__int__def,axiom,
    ( pcr_int
    = ( relcom8911704206367525917at_int
      @ ( basic_5328504652464829177at_nat
        @ ^ [Y5: nat,Z2: nat] : Y5 = Z2
        @ ^ [Y5: nat,Z2: nat] : Y5 = Z2 )
      @ cr_int ) ) ).

% pcr_int_def
thf(fact_7870_lcm__code__integer,axiom,
    ( gcd_lcm_Code_integer
    = ( ^ [A4: code_integer,B4: code_integer] : ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ ( abs_abs_Code_integer @ A4 ) @ ( abs_abs_Code_integer @ B4 ) ) @ ( gcd_gcd_Code_integer @ A4 @ B4 ) ) ) ) ).

% lcm_code_integer
thf(fact_7871_Least__eq__0,axiom,
    ! [P: nat > $o] :
      ( ( P @ zero_zero_nat )
     => ( ( ord_Least_nat @ P )
        = zero_zero_nat ) ) ).

% Least_eq_0
thf(fact_7872_Least__Suc2,axiom,
    ! [P: nat > $o,N: nat,Q: nat > $o,M: nat] :
      ( ( P @ N )
     => ( ( Q @ M )
       => ( ~ ( P @ zero_zero_nat )
         => ( ! [K2: nat] :
                ( ( P @ ( suc @ K2 ) )
                = ( Q @ K2 ) )
           => ( ( ord_Least_nat @ P )
              = ( suc @ ( ord_Least_nat @ Q ) ) ) ) ) ) ) ).

% Least_Suc2
thf(fact_7873_Least__Suc,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ( ( ord_Least_nat @ P )
          = ( suc
            @ ( ord_Least_nat
              @ ^ [M5: nat] : ( P @ ( suc @ M5 ) ) ) ) ) ) ) ).

% Least_Suc
thf(fact_7874_int_Opcr__cr__eq,axiom,
    pcr_int = cr_int ).

% int.pcr_cr_eq
thf(fact_7875_cr__int__def,axiom,
    ( cr_int
    = ( ^ [X4: product_prod_nat_nat] :
          ( ^ [Y5: int,Z2: int] : Y5 = Z2
          @ ( abs_Integ @ X4 ) ) ) ) ).

% cr_int_def
thf(fact_7876_lcm__integer__def,axiom,
    ( gcd_lcm_Code_integer
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ gcd_lcm_int ) ) ).

% lcm_integer_def
thf(fact_7877_Quotient__int,axiom,
    quotie1194848508323700631at_int @ intrel @ abs_Integ @ rep_Integ @ cr_int ).

% Quotient_int
thf(fact_7878_lcm__0__iff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ( gcd_lcm_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        | ( N = zero_zero_nat ) ) ) ).

% lcm_0_iff_nat
thf(fact_7879_lcm__proj2__if__dvd__nat,axiom,
    ! [X: nat,Y3: nat] :
      ( ( dvd_dvd_nat @ X @ Y3 )
     => ( ( gcd_lcm_nat @ X @ Y3 )
        = Y3 ) ) ).

% lcm_proj2_if_dvd_nat
thf(fact_7880_lcm__proj1__if__dvd__nat,axiom,
    ! [X: nat,Y3: nat] :
      ( ( dvd_dvd_nat @ X @ Y3 )
     => ( ( gcd_lcm_nat @ Y3 @ X )
        = Y3 ) ) ).

% lcm_proj1_if_dvd_nat
thf(fact_7881_lcm__proj2__iff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ( gcd_lcm_nat @ M @ N )
        = N )
      = ( dvd_dvd_nat @ M @ N ) ) ).

% lcm_proj2_iff_nat
thf(fact_7882_lcm__proj1__iff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ( gcd_lcm_nat @ M @ N )
        = M )
      = ( dvd_dvd_nat @ N @ M ) ) ).

% lcm_proj1_iff_nat
thf(fact_7883_lcm__1__iff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ( gcd_lcm_nat @ M @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( M
          = ( suc @ zero_zero_nat ) )
        & ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% lcm_1_iff_nat
thf(fact_7884_lcm__0__iff__int,axiom,
    ! [M: int,N: int] :
      ( ( ( gcd_lcm_int @ M @ N )
        = zero_zero_int )
      = ( ( M = zero_zero_int )
        | ( N = zero_zero_int ) ) ) ).

% lcm_0_iff_int
thf(fact_7885_lcm__int__int__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( gcd_lcm_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri1314217659103216013at_int @ ( gcd_lcm_nat @ M @ N ) ) ) ).

% lcm_int_int_eq
thf(fact_7886_abs__lcm__int,axiom,
    ! [I: int,J: int] :
      ( ( abs_abs_int @ ( gcd_lcm_int @ I @ J ) )
      = ( gcd_lcm_int @ I @ J ) ) ).

% abs_lcm_int
thf(fact_7887_lcm__abs1__int,axiom,
    ! [X: int,Y3: int] :
      ( ( gcd_lcm_int @ ( abs_abs_int @ X ) @ Y3 )
      = ( gcd_lcm_int @ X @ Y3 ) ) ).

% lcm_abs1_int
thf(fact_7888_lcm__abs2__int,axiom,
    ! [X: int,Y3: int] :
      ( ( gcd_lcm_int @ X @ ( abs_abs_int @ Y3 ) )
      = ( gcd_lcm_int @ X @ Y3 ) ) ).

% lcm_abs2_int
thf(fact_7889_lcm__1__iff__int,axiom,
    ! [M: int,N: int] :
      ( ( ( gcd_lcm_int @ M @ N )
        = one_one_int )
      = ( ( ( M = one_one_int )
          | ( M
            = ( uminus_uminus_int @ one_one_int ) ) )
        & ( ( N = one_one_int )
          | ( N
            = ( uminus_uminus_int @ one_one_int ) ) ) ) ) ).

% lcm_1_iff_int
thf(fact_7890_lcm__proj2__if__dvd__int,axiom,
    ! [X: int,Y3: int] :
      ( ( dvd_dvd_int @ X @ Y3 )
     => ( ( gcd_lcm_int @ X @ Y3 )
        = ( abs_abs_int @ Y3 ) ) ) ).

% lcm_proj2_if_dvd_int
thf(fact_7891_lcm__proj1__if__dvd__int,axiom,
    ! [X: int,Y3: int] :
      ( ( dvd_dvd_int @ X @ Y3 )
     => ( ( gcd_lcm_int @ Y3 @ X )
        = ( abs_abs_int @ Y3 ) ) ) ).

% lcm_proj1_if_dvd_int
thf(fact_7892_lcm__proj2__iff__int,axiom,
    ! [M: int,N: int] :
      ( ( ( gcd_lcm_int @ M @ N )
        = ( abs_abs_int @ N ) )
      = ( dvd_dvd_int @ M @ N ) ) ).

% lcm_proj2_iff_int
thf(fact_7893_lcm__proj1__iff__int,axiom,
    ! [M: int,N: int] :
      ( ( ( gcd_lcm_int @ M @ N )
        = ( abs_abs_int @ M ) )
      = ( dvd_dvd_int @ N @ M ) ) ).

% lcm_proj1_iff_int
thf(fact_7894_lcm__nat__abs__right__eq,axiom,
    ! [N: nat,K: int] :
      ( ( gcd_lcm_nat @ N @ ( nat2 @ ( abs_abs_int @ K ) ) )
      = ( nat2 @ ( gcd_lcm_int @ ( semiri1314217659103216013at_int @ N ) @ K ) ) ) ).

% lcm_nat_abs_right_eq
thf(fact_7895_lcm__nat__abs__left__eq,axiom,
    ! [K: int,N: nat] :
      ( ( gcd_lcm_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ N )
      = ( nat2 @ ( gcd_lcm_int @ K @ ( semiri1314217659103216013at_int @ N ) ) ) ) ).

% lcm_nat_abs_left_eq
thf(fact_7896_lcm__ge__0__int,axiom,
    ! [X: int,Y3: int] : ( ord_less_eq_int @ zero_zero_int @ ( gcd_lcm_int @ X @ Y3 ) ) ).

% lcm_ge_0_int
thf(fact_7897_Inf__nat__def,axiom,
    ( complete_Inf_Inf_nat
    = ( ^ [X9: set_nat] :
          ( ord_Least_nat
          @ ^ [N5: nat] : ( member_nat @ N5 @ X9 ) ) ) ) ).

% Inf_nat_def
thf(fact_7898_prod__gcd__lcm__nat,axiom,
    ( times_times_nat
    = ( ^ [M5: nat,N5: nat] : ( times_times_nat @ ( gcd_gcd_nat @ M5 @ N5 ) @ ( gcd_lcm_nat @ M5 @ N5 ) ) ) ) ).

% prod_gcd_lcm_nat
thf(fact_7899_lcm__neg1__int,axiom,
    ! [X: int,Y3: int] :
      ( ( gcd_lcm_int @ ( uminus_uminus_int @ X ) @ Y3 )
      = ( gcd_lcm_int @ X @ Y3 ) ) ).

% lcm_neg1_int
thf(fact_7900_lcm__neg2__int,axiom,
    ! [X: int,Y3: int] :
      ( ( gcd_lcm_int @ X @ ( uminus_uminus_int @ Y3 ) )
      = ( gcd_lcm_int @ X @ Y3 ) ) ).

% lcm_neg2_int
thf(fact_7901_dvd__lcm__I2__int,axiom,
    ! [I: int,N: int,M: int] :
      ( ( dvd_dvd_int @ I @ N )
     => ( dvd_dvd_int @ I @ ( gcd_lcm_int @ M @ N ) ) ) ).

% dvd_lcm_I2_int
thf(fact_7902_dvd__lcm__I1__int,axiom,
    ! [I: int,M: int,N: int] :
      ( ( dvd_dvd_int @ I @ M )
     => ( dvd_dvd_int @ I @ ( gcd_lcm_int @ M @ N ) ) ) ).

% dvd_lcm_I1_int
thf(fact_7903_lcm__unique__nat,axiom,
    ! [A: nat,D: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ D )
        & ( dvd_dvd_nat @ B @ D )
        & ! [E3: nat] :
            ( ( ( dvd_dvd_nat @ A @ E3 )
              & ( dvd_dvd_nat @ B @ E3 ) )
           => ( dvd_dvd_nat @ D @ E3 ) ) )
      = ( D
        = ( gcd_lcm_nat @ A @ B ) ) ) ).

% lcm_unique_nat
thf(fact_7904_dvd__lcm__I2__nat,axiom,
    ! [K: nat,N: nat,M: nat] :
      ( ( dvd_dvd_nat @ K @ N )
     => ( dvd_dvd_nat @ K @ ( gcd_lcm_nat @ M @ N ) ) ) ).

% dvd_lcm_I2_nat
thf(fact_7905_dvd__lcm__I1__nat,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ M )
     => ( dvd_dvd_nat @ K @ ( gcd_lcm_nat @ M @ N ) ) ) ).

% dvd_lcm_I1_nat
thf(fact_7906_lcm__int__def,axiom,
    ( gcd_lcm_int
    = ( ^ [X4: int,Y: int] : ( semiri1314217659103216013at_int @ ( gcd_lcm_nat @ ( nat2 @ ( abs_abs_int @ X4 ) ) @ ( nat2 @ ( abs_abs_int @ Y ) ) ) ) ) ) ).

% lcm_int_def
thf(fact_7907_lcm__pos__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_nat @ zero_zero_nat @ ( gcd_lcm_nat @ M @ N ) ) ) ) ).

% lcm_pos_nat
thf(fact_7908_lcm__pos__int,axiom,
    ! [M: int,N: int] :
      ( ( M != zero_zero_int )
     => ( ( N != zero_zero_int )
       => ( ord_less_int @ zero_zero_int @ ( gcd_lcm_int @ M @ N ) ) ) ) ).

% lcm_pos_int
thf(fact_7909_lcm__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y5: int,Z2: int] : Y5 = Z2
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y5: int,Z2: int] : Y5 = Z2
      @ ^ [Y5: int,Z2: int] : Y5 = Z2 )
    @ gcd_lcm_int
    @ gcd_lcm_int ) ).

% lcm_integer.rsp
thf(fact_7910_lcm__integer_Orep__eq,axiom,
    ! [X: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( gcd_lcm_Code_integer @ X @ Xa ) )
      = ( gcd_lcm_int @ ( code_int_of_integer @ X ) @ ( code_int_of_integer @ Xa ) ) ) ).

% lcm_integer.rep_eq
thf(fact_7911_lcm__integer_Oabs__eq,axiom,
    ! [Xa: int,X: int] :
      ( ( gcd_lcm_Code_integer @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X ) )
      = ( code_integer_of_int @ ( gcd_lcm_int @ Xa @ X ) ) ) ).

% lcm_integer.abs_eq
thf(fact_7912_lcm__cases__int,axiom,
    ! [X: int,Y3: int,P: int > $o] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ X )
       => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
         => ( P @ ( gcd_lcm_int @ X @ Y3 ) ) ) )
     => ( ( ( ord_less_eq_int @ zero_zero_int @ X )
         => ( ( ord_less_eq_int @ Y3 @ zero_zero_int )
           => ( P @ ( gcd_lcm_int @ X @ ( uminus_uminus_int @ Y3 ) ) ) ) )
       => ( ( ( ord_less_eq_int @ X @ zero_zero_int )
           => ( ( ord_less_eq_int @ zero_zero_int @ Y3 )
             => ( P @ ( gcd_lcm_int @ ( uminus_uminus_int @ X ) @ Y3 ) ) ) )
         => ( ( ( ord_less_eq_int @ X @ zero_zero_int )
             => ( ( ord_less_eq_int @ Y3 @ zero_zero_int )
               => ( P @ ( gcd_lcm_int @ ( uminus_uminus_int @ X ) @ ( uminus_uminus_int @ Y3 ) ) ) ) )
           => ( P @ ( gcd_lcm_int @ X @ Y3 ) ) ) ) ) ) ).

% lcm_cases_int
thf(fact_7913_lcm__unique__int,axiom,
    ! [D: int,A: int,B: int] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ D )
        & ( dvd_dvd_int @ A @ D )
        & ( dvd_dvd_int @ B @ D )
        & ! [E3: int] :
            ( ( ( dvd_dvd_int @ A @ E3 )
              & ( dvd_dvd_int @ B @ E3 ) )
           => ( dvd_dvd_int @ D @ E3 ) ) )
      = ( D
        = ( gcd_lcm_int @ A @ B ) ) ) ).

% lcm_unique_int
thf(fact_7914_lcm__nat__def,axiom,
    ( gcd_lcm_nat
    = ( ^ [X4: nat,Y: nat] : ( divide_divide_nat @ ( times_times_nat @ X4 @ Y ) @ ( gcd_gcd_nat @ X4 @ Y ) ) ) ) ).

% lcm_nat_def
thf(fact_7915_prod__gcd__lcm__int,axiom,
    ! [M: int,N: int] :
      ( ( times_times_int @ ( abs_abs_int @ M ) @ ( abs_abs_int @ N ) )
      = ( times_times_int @ ( gcd_gcd_int @ M @ N ) @ ( gcd_lcm_int @ M @ N ) ) ) ).

% prod_gcd_lcm_int
thf(fact_7916_lcm__altdef__int,axiom,
    ( gcd_lcm_int
    = ( ^ [A4: int,B4: int] : ( divide_divide_int @ ( times_times_int @ ( abs_abs_int @ A4 ) @ ( abs_abs_int @ B4 ) ) @ ( gcd_gcd_int @ A4 @ B4 ) ) ) ) ).

% lcm_altdef_int
thf(fact_7917_lcm__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ gcd_lcm_int @ gcd_lcm_Code_integer ).

% lcm_integer.transfer
thf(fact_7918_Lcm__int__set__eq__fold,axiom,
    ! [Xs2: list_int] :
      ( ( gcd_Lcm_int @ ( set_int2 @ Xs2 ) )
      = ( fold_int_int @ gcd_lcm_int @ Xs2 @ one_one_int ) ) ).

% Lcm_int_set_eq_fold
thf(fact_7919_Lcm__eq__Max__nat,axiom,
    ! [M2: set_nat] :
      ( ( finite_finite_nat @ M2 )
     => ( ( M2 != bot_bot_set_nat )
       => ( ~ ( member_nat @ zero_zero_nat @ M2 )
         => ( ! [M4: nat,N2: nat] :
                ( ( member_nat @ M4 @ M2 )
               => ( ( member_nat @ N2 @ M2 )
                 => ( member_nat @ ( gcd_lcm_nat @ M4 @ N2 ) @ M2 ) ) )
           => ( ( gcd_Lcm_nat @ M2 )
              = ( lattic8265883725875713057ax_nat @ M2 ) ) ) ) ) ) ).

% Lcm_eq_Max_nat
thf(fact_7920_Lcm__eq__0__I__nat,axiom,
    ! [A3: set_nat] :
      ( ( member_nat @ zero_zero_nat @ A3 )
     => ( ( gcd_Lcm_nat @ A3 )
        = zero_zero_nat ) ) ).

% Lcm_eq_0_I_nat
thf(fact_7921_abs__Lcm__eq,axiom,
    ! [K5: set_int] :
      ( ( abs_abs_int @ ( gcd_Lcm_int @ K5 ) )
      = ( gcd_Lcm_int @ K5 ) ) ).

% abs_Lcm_eq
thf(fact_7922_Lcm__0__iff__nat,axiom,
    ! [A3: set_nat] :
      ( ( finite_finite_nat @ A3 )
     => ( ( ( gcd_Lcm_nat @ A3 )
          = zero_zero_nat )
        = ( member_nat @ zero_zero_nat @ A3 ) ) ) ).

% Lcm_0_iff_nat
thf(fact_7923_Lcm__abs__eq,axiom,
    ! [K5: set_int] :
      ( ( gcd_Lcm_int @ ( image_int_int @ abs_abs_int @ K5 ) )
      = ( gcd_Lcm_int @ K5 ) ) ).

% Lcm_abs_eq
thf(fact_7924_Lcm__int__eq,axiom,
    ! [N6: set_nat] :
      ( ( gcd_Lcm_int @ ( image_nat_int @ semiri1314217659103216013at_int @ N6 ) )
      = ( semiri1314217659103216013at_int @ ( gcd_Lcm_nat @ N6 ) ) ) ).

% Lcm_int_eq
thf(fact_7925_Lcm__nat__abs__eq,axiom,
    ! [K5: set_int] :
      ( ( gcd_Lcm_nat
        @ ( image_int_nat
          @ ^ [K3: int] : ( nat2 @ ( abs_abs_int @ K3 ) )
          @ K5 ) )
      = ( nat2 @ ( gcd_Lcm_int @ K5 ) ) ) ).

% Lcm_nat_abs_eq
thf(fact_7926_Lcm__nat__insert,axiom,
    ! [N: nat,M2: set_nat] :
      ( ( gcd_Lcm_nat @ ( insert_nat @ N @ M2 ) )
      = ( gcd_lcm_nat @ N @ ( gcd_Lcm_nat @ M2 ) ) ) ).

% Lcm_nat_insert
thf(fact_7927_Lcm__least__int,axiom,
    ! [A3: set_int,A: int] :
      ( ! [B2: int] :
          ( ( member_int @ B2 @ A3 )
         => ( dvd_dvd_int @ B2 @ A ) )
     => ( dvd_dvd_int @ ( gcd_Lcm_int @ A3 ) @ A ) ) ).

% Lcm_least_int
thf(fact_7928_dvd__Lcm__int,axiom,
    ! [M: int,M2: set_int] :
      ( ( member_int @ M @ M2 )
     => ( dvd_dvd_int @ M @ ( gcd_Lcm_int @ M2 ) ) ) ).

% dvd_Lcm_int
thf(fact_7929_dvd__Lcm__nat,axiom,
    ! [M: nat,M2: set_nat] :
      ( ( member_nat @ M @ M2 )
     => ( dvd_dvd_nat @ M @ ( gcd_Lcm_nat @ M2 ) ) ) ).

% dvd_Lcm_nat
thf(fact_7930_Lcm__dvd__nat,axiom,
    ! [M2: set_nat,N: nat] :
      ( ! [X5: nat] :
          ( ( member_nat @ X5 @ M2 )
         => ( dvd_dvd_nat @ X5 @ N ) )
     => ( dvd_dvd_nat @ ( gcd_Lcm_nat @ M2 ) @ N ) ) ).

% Lcm_dvd_nat
thf(fact_7931_Lcm__int__greater__eq__0,axiom,
    ! [K5: set_int] : ( ord_less_eq_int @ zero_zero_int @ ( gcd_Lcm_int @ K5 ) ) ).

% Lcm_int_greater_eq_0
thf(fact_7932_Lcm__nat__infinite,axiom,
    ! [M2: set_nat] :
      ( ~ ( finite_finite_nat @ M2 )
     => ( ( gcd_Lcm_nat @ M2 )
        = zero_zero_nat ) ) ).

% Lcm_nat_infinite
thf(fact_7933_Lcm__nat__empty,axiom,
    ( ( gcd_Lcm_nat @ bot_bot_set_nat )
    = one_one_nat ) ).

% Lcm_nat_empty
thf(fact_7934_Lcm__in__lcm__closed__set__nat,axiom,
    ! [M2: set_nat] :
      ( ( finite_finite_nat @ M2 )
     => ( ( M2 != bot_bot_set_nat )
       => ( ! [M4: nat,N2: nat] :
              ( ( member_nat @ M4 @ M2 )
             => ( ( member_nat @ N2 @ M2 )
               => ( member_nat @ ( gcd_lcm_nat @ M4 @ N2 ) @ M2 ) ) )
         => ( member_nat @ ( gcd_Lcm_nat @ M2 ) @ M2 ) ) ) ) ).

% Lcm_in_lcm_closed_set_nat
thf(fact_7935_Gcd__nat__def,axiom,
    ( gcd_Gcd_nat
    = ( ^ [M8: set_nat] :
          ( gcd_Lcm_nat
          @ ( collect_nat
            @ ^ [D2: nat] :
              ! [X4: nat] :
                ( ( member_nat @ X4 @ M8 )
               => ( dvd_dvd_nat @ D2 @ X4 ) ) ) ) ) ) ).

% Gcd_nat_def
thf(fact_7936_Lcm__int__def,axiom,
    ( gcd_Lcm_int
    = ( ^ [K6: set_int] : ( semiri1314217659103216013at_int @ ( gcd_Lcm_nat @ ( image_int_nat @ ( comp_int_nat_int @ nat2 @ abs_abs_int ) @ K6 ) ) ) ) ) ).

% Lcm_int_def
thf(fact_7937_Lcm__nat__set__eq__fold,axiom,
    ! [Xs2: list_nat] :
      ( ( gcd_Lcm_nat @ ( set_nat2 @ Xs2 ) )
      = ( fold_nat_nat @ gcd_lcm_nat @ Xs2 @ one_one_nat ) ) ).

% Lcm_nat_set_eq_fold
thf(fact_7938_Lcm__nat__def,axiom,
    ( gcd_Lcm_nat
    = ( ^ [M8: set_nat] : ( if_nat @ ( finite_finite_nat @ M8 ) @ ( lattic7826324295020591184_F_nat @ gcd_lcm_nat @ one_one_nat @ M8 ) @ zero_zero_nat ) ) ) ).

% Lcm_nat_def
thf(fact_7939_normalize__stable,axiom,
    ! [Q2: int,P4: int] :
      ( ( ord_less_int @ zero_zero_int @ Q2 )
     => ( ( algebr932160517623751201me_int @ P4 @ Q2 )
       => ( ( normalize @ ( product_Pair_int_int @ P4 @ Q2 ) )
          = ( product_Pair_int_int @ P4 @ Q2 ) ) ) ) ).

% normalize_stable
thf(fact_7940_normalize__coprime,axiom,
    ! [R: product_prod_int_int,P4: int,Q2: int] :
      ( ( ( normalize @ R )
        = ( product_Pair_int_int @ P4 @ Q2 ) )
     => ( algebr932160517623751201me_int @ P4 @ Q2 ) ) ).

% normalize_coprime
thf(fact_7941_coprime__crossproduct__int,axiom,
    ! [A: int,D: int,B: int,C: int] :
      ( ( algebr932160517623751201me_int @ A @ D )
     => ( ( algebr932160517623751201me_int @ B @ C )
       => ( ( ( times_times_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ C ) )
            = ( times_times_int @ ( abs_abs_int @ B ) @ ( abs_abs_int @ D ) ) )
          = ( ( ( abs_abs_int @ A )
              = ( abs_abs_int @ B ) )
            & ( ( abs_abs_int @ C )
              = ( abs_abs_int @ D ) ) ) ) ) ) ).

% coprime_crossproduct_int
thf(fact_7942_quotient__of__coprime,axiom,
    ! [R: rat,P4: int,Q2: int] :
      ( ( ( quotient_of @ R )
        = ( product_Pair_int_int @ P4 @ Q2 ) )
     => ( algebr932160517623751201me_int @ P4 @ Q2 ) ) ).

% quotient_of_coprime
thf(fact_7943_quotient__of__def,axiom,
    ( quotient_of
    = ( ^ [X4: rat] :
          ( the_Pr4378521158711661632nt_int
          @ ^ [Pair: product_prod_int_int] :
              ( ( X4
                = ( fract @ ( product_fst_int_int @ Pair ) @ ( product_snd_int_int @ Pair ) ) )
              & ( ord_less_int @ zero_zero_int @ ( product_snd_int_int @ Pair ) )
              & ( algebr932160517623751201me_int @ ( product_fst_int_int @ Pair ) @ ( product_snd_int_int @ Pair ) ) ) ) ) ) ).

% quotient_of_def
thf(fact_7944_coprime__common__divisor__nat,axiom,
    ! [A: nat,B: nat,X: nat] :
      ( ( algebr934650988132801477me_nat @ A @ B )
     => ( ( dvd_dvd_nat @ X @ A )
       => ( ( dvd_dvd_nat @ X @ B )
         => ( X = one_one_nat ) ) ) ) ).

% coprime_common_divisor_nat
thf(fact_7945_coprime__Suc__left__nat,axiom,
    ! [N: nat] : ( algebr934650988132801477me_nat @ ( suc @ N ) @ N ) ).

% coprime_Suc_left_nat
thf(fact_7946_coprime__Suc__right__nat,axiom,
    ! [N: nat] : ( algebr934650988132801477me_nat @ N @ ( suc @ N ) ) ).

% coprime_Suc_right_nat
thf(fact_7947_coprime__crossproduct__nat,axiom,
    ! [A: nat,D: nat,B: nat,C: nat] :
      ( ( algebr934650988132801477me_nat @ A @ D )
     => ( ( algebr934650988132801477me_nat @ B @ C )
       => ( ( ( times_times_nat @ A @ C )
            = ( times_times_nat @ B @ D ) )
          = ( ( A = B )
            & ( C = D ) ) ) ) ) ).

% coprime_crossproduct_nat
thf(fact_7948_coprime__Suc__0__left,axiom,
    ! [N: nat] : ( algebr934650988132801477me_nat @ ( suc @ zero_zero_nat ) @ N ) ).

% coprime_Suc_0_left
thf(fact_7949_coprime__Suc__0__right,axiom,
    ! [N: nat] : ( algebr934650988132801477me_nat @ N @ ( suc @ zero_zero_nat ) ) ).

% coprime_Suc_0_right
thf(fact_7950_quotient__of__eq,axiom,
    ! [A: int,B: int,P4: int,Q2: int] :
      ( ( ( quotient_of @ ( fract @ A @ B ) )
        = ( product_Pair_int_int @ P4 @ Q2 ) )
     => ( ( fract @ P4 @ Q2 )
        = ( fract @ A @ B ) ) ) ).

% quotient_of_eq
thf(fact_7951_normalize__eq,axiom,
    ! [A: int,B: int,P4: int,Q2: int] :
      ( ( ( normalize @ ( product_Pair_int_int @ A @ B ) )
        = ( product_Pair_int_int @ P4 @ Q2 ) )
     => ( ( fract @ P4 @ Q2 )
        = ( fract @ A @ B ) ) ) ).

% normalize_eq
thf(fact_7952_quotient__of__Fract,axiom,
    ! [A: int,B: int] :
      ( ( quotient_of @ ( fract @ A @ B ) )
      = ( normalize @ ( product_Pair_int_int @ A @ B ) ) ) ).

% quotient_of_Fract
thf(fact_7953_coprime__diff__one__right__nat,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( algebr934650988132801477me_nat @ N @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ).

% coprime_diff_one_right_nat
thf(fact_7954_coprime__diff__one__left__nat,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( algebr934650988132801477me_nat @ ( minus_minus_nat @ N @ one_one_nat ) @ N ) ) ).

% coprime_diff_one_left_nat
thf(fact_7955_Fract_Oabs__eq,axiom,
    ( fract
    = ( ^ [Xa3: int,X4: int] : ( abs_Rat @ ( if_Pro3027730157355071871nt_int @ ( X4 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ Xa3 @ X4 ) ) ) ) ) ).

% Fract.abs_eq
thf(fact_7956_Fract_Otransfer,axiom,
    ( bNF_re3461391660133120880nt_rat
    @ ^ [Y5: int,Z2: int] : Y5 = Z2
    @ ( bNF_re2214769303045360666nt_rat
      @ ^ [Y5: int,Z2: int] : Y5 = Z2
      @ pcr_rat )
    @ ^ [A4: int,B4: int] : ( if_Pro3027730157355071871nt_int @ ( B4 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ A4 @ B4 ) )
    @ fract ) ).

% Fract.transfer
thf(fact_7957_Fract__def,axiom,
    ( fract
    = ( map_fu7831380289885515383nt_rat @ id_int @ ( map_fu3424225382358772769nt_rat @ id_int @ abs_Rat )
      @ ^ [A4: int,B4: int] : ( if_Pro3027730157355071871nt_int @ ( B4 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ A4 @ B4 ) ) ) ) ).

% Fract_def
thf(fact_7958_of__int__eq__id,axiom,
    ring_1_of_int_int = id_int ).

% of_int_eq_id
thf(fact_7959_natural__decr,axiom,
    ! [N: code_natural] :
      ( ( N != zero_z2226904508553997617atural )
     => ( ord_less_nat @ ( minus_minus_nat @ ( code_nat_of_natural @ N ) @ ( suc @ zero_zero_nat ) ) @ ( code_nat_of_natural @ N ) ) ) ).

% natural_decr
thf(fact_7960_plus__natural_Orep__eq,axiom,
    ! [X: code_natural,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( plus_p4538020629002901425atural @ X @ Xa ) )
      = ( plus_plus_nat @ ( code_nat_of_natural @ X ) @ ( code_nat_of_natural @ Xa ) ) ) ).

% plus_natural.rep_eq
thf(fact_7961_zero__natural_Orep__eq,axiom,
    ( ( code_nat_of_natural @ zero_z2226904508553997617atural )
    = zero_zero_nat ) ).

% zero_natural.rep_eq
thf(fact_7962_one__natural_Orep__eq,axiom,
    ( ( code_nat_of_natural @ one_one_Code_natural )
    = one_one_nat ) ).

% one_natural.rep_eq
thf(fact_7963_plus__natural__def,axiom,
    ( plus_p4538020629002901425atural
    = ( map_fu6549440983881763648atural @ code_nat_of_natural @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ plus_plus_nat ) ) ).

% plus_natural_def
thf(fact_7964_one__natural__def,axiom,
    ( one_one_Code_natural
    = ( code_natural_of_nat @ one_one_nat ) ) ).

% one_natural_def
thf(fact_7965_zero__natural__def,axiom,
    ( zero_z2226904508553997617atural
    = ( code_natural_of_nat @ zero_zero_nat ) ) ).

% zero_natural_def
thf(fact_7966_plus__natural_Oabs__eq,axiom,
    ! [Xa: nat,X: nat] :
      ( ( plus_p4538020629002901425atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X ) )
      = ( code_natural_of_nat @ ( plus_plus_nat @ Xa @ X ) ) ) ).

% plus_natural.abs_eq
thf(fact_7967_drop__upt,axiom,
    ! [M: nat,I: nat,J: nat] :
      ( ( drop_nat @ M @ ( upt @ I @ J ) )
      = ( upt @ ( plus_plus_nat @ I @ M ) @ J ) ) ).

% drop_upt
thf(fact_7968_gcd__nat_Osemilattice__neutr__axioms,axiom,
    semila9081495762789891438tr_nat @ gcd_gcd_nat @ zero_zero_nat ).

% gcd_nat.semilattice_neutr_axioms
thf(fact_7969_max__nat_Osemilattice__neutr__axioms,axiom,
    semila9081495762789891438tr_nat @ ord_max_nat @ zero_zero_nat ).

% max_nat.semilattice_neutr_axioms
thf(fact_7970_Quotient3__int,axiom,
    quotie6776551016481293500at_int @ intrel @ abs_Integ @ rep_Integ ).

% Quotient3_int
thf(fact_7971_String_Oless__literal__def,axiom,
    ( ord_less_literal
    = ( map_fu2661873803724901240eral_o @ explode @ ( map_fu6698795530259886495ar_o_o @ explode @ id_o )
      @ ( lexordp_char
        @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) ) ) ) ) ).

% String.less_literal_def
thf(fact_7972_less__literal_Orep__eq,axiom,
    ( ord_less_literal
    = ( ^ [X4: literal,Xa3: literal] :
          ( lexordp_char
          @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) )
          @ ( explode @ X4 )
          @ ( explode @ Xa3 ) ) ) ) ).

% less_literal.rep_eq
thf(fact_7973_String_Oless__eq__literal__def,axiom,
    ( ord_less_eq_literal
    = ( map_fu2661873803724901240eral_o @ explode @ ( map_fu6698795530259886495ar_o_o @ explode @ id_o )
      @ ( lexordp_eq_char
        @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) ) ) ) ) ).

% String.less_eq_literal_def
thf(fact_7974_less__eq__literal_Orep__eq,axiom,
    ( ord_less_eq_literal
    = ( ^ [X4: literal,Xa3: literal] :
          ( lexordp_eq_char
          @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) )
          @ ( explode @ X4 )
          @ ( explode @ Xa3 ) ) ) ) ).

% less_eq_literal.rep_eq
thf(fact_7975_less__eq__literal_Otransfer,axiom,
    ( bNF_re7831395832754058691eral_o @ pcr_literal
    @ ( bNF_re8730477052009823892al_o_o @ pcr_literal
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2 )
    @ ( lexordp_eq_char
      @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) ) )
    @ ord_less_eq_literal ) ).

% less_eq_literal.transfer
thf(fact_7976_less__literal_Otransfer,axiom,
    ( bNF_re7831395832754058691eral_o @ pcr_literal
    @ ( bNF_re8730477052009823892al_o_o @ pcr_literal
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2 )
    @ ( lexordp_char
      @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) ) )
    @ ord_less_literal ) ).

% less_literal.transfer
thf(fact_7977_literal_Orep__transfer,axiom,
    ( bNF_re4991257583289732696t_char @ pcr_literal
    @ ( list_all2_char_char
      @ ^ [Y5: char,Z2: char] : Y5 = Z2 )
    @ ^ [X4: list_char] : X4
    @ explode ) ).

% literal.rep_transfer
thf(fact_7978_String_Ocr__literal__def,axiom,
    ( cr_literal
    = ( ^ [X4: list_char,Y: literal] :
          ( X4
          = ( explode @ Y ) ) ) ) ).

% String.cr_literal_def
thf(fact_7979_cr__natural__def,axiom,
    ( code_cr_natural
    = ( ^ [X4: nat,Y: code_natural] :
          ( X4
          = ( code_nat_of_natural @ Y ) ) ) ) ).

% cr_natural_def
thf(fact_7980_cr__integer__def,axiom,
    ( code_cr_integer
    = ( ^ [X4: int,Y: code_integer] :
          ( X4
          = ( code_int_of_integer @ Y ) ) ) ) ).

% cr_integer_def
thf(fact_7981_gcd__nat_Omonoid__axioms,axiom,
    monoid_nat @ gcd_gcd_nat @ zero_zero_nat ).

% gcd_nat.monoid_axioms
thf(fact_7982_max__nat_Omonoid__axioms,axiom,
    monoid_nat @ ord_max_nat @ zero_zero_nat ).

% max_nat.monoid_axioms
thf(fact_7983_integer__of__nat__1,axiom,
    ( ( code_integer_of_nat @ one_one_nat )
    = one_one_Code_integer ) ).

% integer_of_nat_1
thf(fact_7984_integer__of__nat__0,axiom,
    ( ( code_integer_of_nat @ zero_zero_nat )
    = zero_z3403309356797280102nteger ) ).

% integer_of_nat_0
thf(fact_7985_int__equivp,axiom,
    equiv_749116872481872345at_nat @ intrel ).

% int_equivp
thf(fact_7986_unit__factor__simps_I1_J,axiom,
    ( ( unit_f2748546683901255202or_nat @ zero_zero_nat )
    = zero_zero_nat ) ).

% unit_factor_simps(1)
thf(fact_7987_unit__factor__simps_I2_J,axiom,
    ! [N: nat] :
      ( ( unit_f2748546683901255202or_nat @ ( suc @ N ) )
      = one_one_nat ) ).

% unit_factor_simps(2)
thf(fact_7988_unit__factor__nat__def,axiom,
    ( unit_f2748546683901255202or_nat
    = ( ^ [N5: nat] : ( if_nat @ ( N5 = zero_zero_nat ) @ zero_zero_nat @ one_one_nat ) ) ) ).

% unit_factor_nat_def
thf(fact_7989_Literal_Otransfer,axiom,
    ( bNF_re8691941649098027561iteral
    @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
    @ ( bNF_re5719858693005739489iteral
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
      @ ( bNF_re136309367175754621iteral
        @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
        @ ( bNF_re2365650225897248225iteral
          @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
          @ ( bNF_re5778109699181701841iteral
            @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
            @ ( bNF_re1595102025518187489iteral
              @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
              @ ( bNF_re6148748351543924773iteral
                @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
                @ ( bNF_re5453467372598631581iteral @ pcr_literal @ pcr_literal ) ) ) ) ) ) )
    @ ^ [B0: $o,B1: $o,B22: $o,B32: $o,B42: $o,B52: $o,B62: $o] : ( cons_char @ ( char2 @ B0 @ B1 @ B22 @ B32 @ B42 @ B52 @ B62 @ $false ) )
    @ literal2 ) ).

% Literal.transfer
thf(fact_7990_gcd__nat_Ocomm__monoid__axioms,axiom,
    comm_monoid_nat @ gcd_gcd_nat @ zero_zero_nat ).

% gcd_nat.comm_monoid_axioms
thf(fact_7991_max__nat_Ocomm__monoid__axioms,axiom,
    comm_monoid_nat @ ord_max_nat @ zero_zero_nat ).

% max_nat.comm_monoid_axioms
thf(fact_7992_String_OLiteral__def,axiom,
    ( literal2
    = ( map_fu1104370778922912482iteral @ id_o @ ( map_fu7309004089335677210iteral @ id_o @ ( map_fu1929762555066093878iteral @ id_o @ ( map_fu5333924603067766298iteral @ id_o @ ( map_fu1888220742600445322iteral @ id_o @ ( map_fu5700776415251466522iteral @ id_o @ ( map_fu4627020735845646302iteral @ id_o @ ( map_fu7398138089906338514iteral @ explode @ abs_literal ) ) ) ) ) ) )
      @ ^ [B0: $o,B1: $o,B22: $o,B32: $o,B42: $o,B52: $o,B62: $o] : ( cons_char @ ( char2 @ B0 @ B1 @ B22 @ B32 @ B42 @ B52 @ B62 @ $false ) ) ) ) ).

% String.Literal_def
thf(fact_7993_sum__encode__def,axiom,
    ( nat_sum_encode
    = ( sum_ca6763686470577984908at_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      @ ^ [B4: nat] : ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B4 ) ) ) ) ).

% sum_encode_def
thf(fact_7994_nat__of__num__code_I3_J,axiom,
    ! [N: num] :
      ( ( nat_of_num @ ( bit1 @ N ) )
      = ( suc @ ( plus_plus_nat @ ( nat_of_num @ N ) @ ( nat_of_num @ N ) ) ) ) ).

% nat_of_num_code(3)
thf(fact_7995_nat__of__num__code_I1_J,axiom,
    ( ( nat_of_num @ one )
    = one_one_nat ) ).

% nat_of_num_code(1)
thf(fact_7996_nat__of__num_Osimps_I2_J,axiom,
    ! [X: num] :
      ( ( nat_of_num @ ( bit0 @ X ) )
      = ( plus_plus_nat @ ( nat_of_num @ X ) @ ( nat_of_num @ X ) ) ) ).

% nat_of_num.simps(2)
thf(fact_7997_nat__of__num__neq__0,axiom,
    ! [X: num] :
      ( ( nat_of_num @ X )
     != zero_zero_nat ) ).

% nat_of_num_neq_0
thf(fact_7998_nat__of__num__pos,axiom,
    ! [X: num] : ( ord_less_nat @ zero_zero_nat @ ( nat_of_num @ X ) ) ).

% nat_of_num_pos
thf(fact_7999_nat__of__num__add,axiom,
    ! [X: num,Y3: num] :
      ( ( nat_of_num @ ( plus_plus_num @ X @ Y3 ) )
      = ( plus_plus_nat @ ( nat_of_num @ X ) @ ( nat_of_num @ Y3 ) ) ) ).

% nat_of_num_add
thf(fact_8000_nat__of__num__code_I2_J,axiom,
    ! [N: num] :
      ( ( nat_of_num @ ( bit0 @ N ) )
      = ( plus_plus_nat @ ( nat_of_num @ N ) @ ( nat_of_num @ N ) ) ) ).

% nat_of_num_code(2)
thf(fact_8001_nat__of__num_Osimps_I1_J,axiom,
    ( ( nat_of_num @ one )
    = ( suc @ zero_zero_nat ) ) ).

% nat_of_num.simps(1)
thf(fact_8002_nat__of__num_Osimps_I3_J,axiom,
    ! [X: num] :
      ( ( nat_of_num @ ( bit1 @ X ) )
      = ( suc @ ( plus_plus_nat @ ( nat_of_num @ X ) @ ( nat_of_num @ X ) ) ) ) ).

% nat_of_num.simps(3)
thf(fact_8003_num__of__nat__inverse,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( nat_of_num @ ( num_of_nat @ N ) )
        = N ) ) ).

% num_of_nat_inverse
thf(fact_8004_plus__num__def,axiom,
    ( plus_plus_num
    = ( ^ [M5: num,N5: num] : ( num_of_nat @ ( plus_plus_nat @ ( nat_of_num @ M5 ) @ ( nat_of_num @ N5 ) ) ) ) ) ).

% plus_num_def
thf(fact_8005_gcd__nat_Osemilattice__order__axioms,axiom,
    ( semila1248733672344298208er_nat @ gcd_gcd_nat @ dvd_dvd_nat
    @ ^ [M5: nat,N5: nat] :
        ( ( dvd_dvd_nat @ M5 @ N5 )
        & ( M5 != N5 ) ) ) ).

% gcd_nat.semilattice_order_axioms
thf(fact_8006_int__decode__def,axiom,
    ( nat_int_decode
    = ( ^ [N5: nat] :
          ( sum_ca7763040182479039464nt_nat @ semiri1314217659103216013at_int
          @ ^ [B4: nat] : ( minus_minus_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ B4 ) ) @ one_one_int )
          @ ( nat_sum_decode @ N5 ) ) ) ) ).

% int_decode_def
thf(fact_8007_nat__to__rat__surj__def,axiom,
    ( nat_to_rat_surj
    = ( ^ [N5: nat] :
          ( produc6207742614233964070at_rat
          @ ^ [A4: nat,B4: nat] : ( fract @ ( nat_int_decode @ A4 ) @ ( nat_int_decode @ B4 ) )
          @ ( nat_prod_decode @ N5 ) ) ) ) ).

% nat_to_rat_surj_def
thf(fact_8008_less__nat__rel,axiom,
    ( ord_less_nat
    = ( transi2163837189807498211lp_nat
      @ ^ [M5: nat,N5: nat] :
          ( N5
          = ( suc @ M5 ) ) ) ) ).

% less_nat_rel
thf(fact_8009_small__lazy_H_Ocases,axiom,
    ! [X: product_prod_int_int] :
      ~ ! [D3: int,I3: int] :
          ( X
         != ( product_Pair_int_int @ D3 @ I3 ) ) ).

% small_lazy'.cases
thf(fact_8010_less__eq__int__code_I3_J,axiom,
    ! [L: num] :
      ~ ( ord_less_eq_int @ zero_zero_int @ ( neg @ L ) ) ).

% less_eq_int_code(3)
thf(fact_8011_less__eq__int__code_I7_J,axiom,
    ! [K: num] : ( ord_less_eq_int @ ( neg @ K ) @ zero_zero_int ) ).

% less_eq_int_code(7)
thf(fact_8012_less__int__code_I3_J,axiom,
    ! [L: num] :
      ~ ( ord_less_int @ zero_zero_int @ ( neg @ L ) ) ).

% less_int_code(3)
thf(fact_8013_less__int__code_I7_J,axiom,
    ! [K: num] : ( ord_less_int @ ( neg @ K ) @ zero_zero_int ) ).

% less_int_code(7)
thf(fact_8014_nat__code_I1_J,axiom,
    ! [K: num] :
      ( ( nat2 @ ( neg @ K ) )
      = zero_zero_nat ) ).

% nat_code(1)
thf(fact_8015_plus__int__code_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( neg @ M ) @ ( neg @ N ) )
      = ( neg @ ( plus_plus_num @ M @ N ) ) ) ).

% plus_int_code(6)
thf(fact_8016_less__eq__int__code_I9_J,axiom,
    ! [K: num,L: num] :
      ( ( ord_less_eq_int @ ( neg @ K ) @ ( neg @ L ) )
      = ( ord_less_eq_num @ L @ K ) ) ).

% less_eq_int_code(9)
thf(fact_8017_less__int__code_I9_J,axiom,
    ! [K: num,L: num] :
      ( ( ord_less_int @ ( neg @ K ) @ ( neg @ L ) )
      = ( ord_less_num @ L @ K ) ) ).

% less_int_code(9)
thf(fact_8018_Int_Osub__code_I4_J,axiom,
    ! [N: num] :
      ( ( sub @ one @ ( bit0 @ N ) )
      = ( neg @ ( bitM @ N ) ) ) ).

% Int.sub_code(4)
thf(fact_8019_Int_Osub__code_I5_J,axiom,
    ! [N: num] :
      ( ( sub @ one @ ( bit1 @ N ) )
      = ( neg @ ( bit0 @ N ) ) ) ).

% Int.sub_code(5)
thf(fact_8020_Int_Osub__code_I1_J,axiom,
    ( ( sub @ one @ one )
    = zero_zero_int ) ).

% Int.sub_code(1)
thf(fact_8021_Int_Osub__def,axiom,
    ( sub
    = ( ^ [M5: num,N5: num] : ( minus_minus_int @ ( numeral_numeral_int @ M5 ) @ ( numeral_numeral_int @ N5 ) ) ) ) ).

% Int.sub_def
thf(fact_8022_minus__int__code_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_int @ ( neg @ M ) @ ( neg @ N ) )
      = ( sub @ N @ M ) ) ).

% minus_int_code(6)
thf(fact_8023_Int_Osub__code_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( sub @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( minus_minus_int @ ( dup @ ( sub @ M @ N ) ) @ one_one_int ) ) ).

% Int.sub_code(9)
thf(fact_8024_Int_Osub__code_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( sub @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( plus_plus_int @ ( dup @ ( sub @ M @ N ) ) @ one_one_int ) ) ).

% Int.sub_code(8)
thf(fact_8025_Int_Odup__code_I1_J,axiom,
    ( ( dup @ zero_zero_int )
    = zero_zero_int ) ).

% Int.dup_code(1)
thf(fact_8026_Int_Odup__def,axiom,
    ( dup
    = ( ^ [K3: int] : ( plus_plus_int @ K3 @ K3 ) ) ) ).

% Int.dup_def
thf(fact_8027_Int_Odup__code_I3_J,axiom,
    ! [N: num] :
      ( ( dup @ ( neg @ N ) )
      = ( neg @ ( bit0 @ N ) ) ) ).

% Int.dup_code(3)
thf(fact_8028_Int_Osub__code_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( sub @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( dup @ ( sub @ M @ N ) ) ) ).

% Int.sub_code(6)
thf(fact_8029_Int_Osub__code_I7_J,axiom,
    ! [M: num,N: num] :
      ( ( sub @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( dup @ ( sub @ M @ N ) ) ) ).

% Int.sub_code(7)
thf(fact_8030_Int_Osub__code_I2_J,axiom,
    ! [M: num] :
      ( ( sub @ ( bit0 @ M ) @ one )
      = ( pos @ ( bitM @ M ) ) ) ).

% Int.sub_code(2)
thf(fact_8031_Int_Osub__code_I3_J,axiom,
    ! [M: num] :
      ( ( sub @ ( bit1 @ M ) @ one )
      = ( pos @ ( bit0 @ M ) ) ) ).

% Int.sub_code(3)
thf(fact_8032_Int_ONeg__def,axiom,
    ( neg
    = ( ^ [N5: num] : ( uminus_uminus_int @ ( pos @ N5 ) ) ) ) ).

% Int.Neg_def
thf(fact_8033_uminus__int__code_I2_J,axiom,
    ! [M: num] :
      ( ( uminus_uminus_int @ ( pos @ M ) )
      = ( neg @ M ) ) ).

% uminus_int_code(2)
thf(fact_8034_uminus__int__code_I3_J,axiom,
    ! [M: num] :
      ( ( uminus_uminus_int @ ( neg @ M ) )
      = ( pos @ M ) ) ).

% uminus_int_code(3)
thf(fact_8035_less__eq__int__code_I8_J,axiom,
    ! [K: num,L: num] : ( ord_less_eq_int @ ( neg @ K ) @ ( pos @ L ) ) ).

% less_eq_int_code(8)
thf(fact_8036_less__eq__int__code_I6_J,axiom,
    ! [K: num,L: num] :
      ~ ( ord_less_eq_int @ ( pos @ K ) @ ( neg @ L ) ) ).

% less_eq_int_code(6)
thf(fact_8037_less__int__code_I6_J,axiom,
    ! [K: num,L: num] :
      ~ ( ord_less_int @ ( pos @ K ) @ ( neg @ L ) ) ).

% less_int_code(6)
thf(fact_8038_less__int__code_I8_J,axiom,
    ! [K: num,L: num] : ( ord_less_int @ ( neg @ K ) @ ( pos @ L ) ) ).

% less_int_code(8)
thf(fact_8039_Int_OPos__def,axiom,
    pos = numeral_numeral_int ).

% Int.Pos_def
thf(fact_8040_one__int__code,axiom,
    ( one_one_int
    = ( pos @ one ) ) ).

% one_int_code
thf(fact_8041_less__int__code_I4_J,axiom,
    ! [K: num] :
      ~ ( ord_less_int @ ( pos @ K ) @ zero_zero_int ) ).

% less_int_code(4)
thf(fact_8042_less__int__code_I2_J,axiom,
    ! [L: num] : ( ord_less_int @ zero_zero_int @ ( pos @ L ) ) ).

% less_int_code(2)
thf(fact_8043_plus__int__code_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( pos @ M ) @ ( pos @ N ) )
      = ( pos @ ( plus_plus_num @ M @ N ) ) ) ).

% plus_int_code(3)
thf(fact_8044_less__eq__int__code_I4_J,axiom,
    ! [K: num] :
      ~ ( ord_less_eq_int @ ( pos @ K ) @ zero_zero_int ) ).

% less_eq_int_code(4)
thf(fact_8045_less__eq__int__code_I2_J,axiom,
    ! [L: num] : ( ord_less_eq_int @ zero_zero_int @ ( pos @ L ) ) ).

% less_eq_int_code(2)
thf(fact_8046_times__int__code_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( pos @ M ) @ ( pos @ N ) )
      = ( pos @ ( times_times_num @ M @ N ) ) ) ).

% times_int_code(3)
thf(fact_8047_nat__code_I3_J,axiom,
    ! [K: num] :
      ( ( nat2 @ ( pos @ K ) )
      = ( nat_of_num @ K ) ) ).

% nat_code(3)
thf(fact_8048_less__eq__int__code_I5_J,axiom,
    ! [K: num,L: num] :
      ( ( ord_less_eq_int @ ( pos @ K ) @ ( pos @ L ) )
      = ( ord_less_eq_num @ K @ L ) ) ).

% less_eq_int_code(5)
thf(fact_8049_less__int__code_I5_J,axiom,
    ! [K: num,L: num] :
      ( ( ord_less_int @ ( pos @ K ) @ ( pos @ L ) )
      = ( ord_less_num @ K @ L ) ) ).

% less_int_code(5)
thf(fact_8050_minus__int__code_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_int @ ( pos @ M ) @ ( pos @ N ) )
      = ( sub @ M @ N ) ) ).

% minus_int_code(3)
thf(fact_8051_Int_Odup__code_I2_J,axiom,
    ! [N: num] :
      ( ( dup @ ( pos @ N ) )
      = ( pos @ ( bit0 @ N ) ) ) ).

% Int.dup_code(2)
thf(fact_8052_minus__int__code_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_int @ ( neg @ M ) @ ( pos @ N ) )
      = ( neg @ ( plus_plus_num @ M @ N ) ) ) ).

% minus_int_code(5)
thf(fact_8053_minus__int__code_I4_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_int @ ( pos @ M ) @ ( neg @ N ) )
      = ( pos @ ( plus_plus_num @ M @ N ) ) ) ).

% minus_int_code(4)
thf(fact_8054_times__int__code_I4_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( pos @ M ) @ ( neg @ N ) )
      = ( neg @ ( times_times_num @ M @ N ) ) ) ).

% times_int_code(4)
thf(fact_8055_times__int__code_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( neg @ M ) @ ( pos @ N ) )
      = ( neg @ ( times_times_num @ M @ N ) ) ) ).

% times_int_code(5)
thf(fact_8056_times__int__code_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( neg @ M ) @ ( neg @ N ) )
      = ( pos @ ( times_times_num @ M @ N ) ) ) ).

% times_int_code(6)
thf(fact_8057_plus__int__code_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( neg @ M ) @ ( pos @ N ) )
      = ( sub @ N @ M ) ) ).

% plus_int_code(5)
thf(fact_8058_plus__int__code_I4_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( pos @ M ) @ ( neg @ N ) )
      = ( sub @ M @ N ) ) ).

% plus_int_code(4)
thf(fact_8059_strict__mono__imp__increasing,axiom,
    ! [F: nat > nat,N: nat] :
      ( ( order_5726023648592871131at_nat @ F )
     => ( ord_less_eq_nat @ N @ ( F @ N ) ) ) ).

% strict_mono_imp_increasing
thf(fact_8060_Abs__int__inject,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y3: set_Pr1261947904930325089at_nat] :
      ( ( member2643936169264416010at_nat @ X
        @ ( collec5514110066124741708at_nat
          @ ^ [C3: set_Pr1261947904930325089at_nat] :
            ? [X4: product_prod_nat_nat] :
              ( ( intrel @ X4 @ X4 )
              & ( C3
                = ( collec3392354462482085612at_nat @ ( intrel @ X4 ) ) ) ) ) )
     => ( ( member2643936169264416010at_nat @ Y3
          @ ( collec5514110066124741708at_nat
            @ ^ [C3: set_Pr1261947904930325089at_nat] :
              ? [X4: product_prod_nat_nat] :
                ( ( intrel @ X4 @ X4 )
                & ( C3
                  = ( collec3392354462482085612at_nat @ ( intrel @ X4 ) ) ) ) ) )
       => ( ( ( abs_int @ X )
            = ( abs_int @ Y3 ) )
          = ( X = Y3 ) ) ) ) ).

% Abs_int_inject
thf(fact_8061_Abs__int__induct,axiom,
    ! [P: int > $o,X: int] :
      ( ! [Y4: set_Pr1261947904930325089at_nat] :
          ( ( member2643936169264416010at_nat @ Y4
            @ ( collec5514110066124741708at_nat
              @ ^ [C3: set_Pr1261947904930325089at_nat] :
                ? [X4: product_prod_nat_nat] :
                  ( ( intrel @ X4 @ X4 )
                  & ( C3
                    = ( collec3392354462482085612at_nat @ ( intrel @ X4 ) ) ) ) ) )
         => ( P @ ( abs_int @ Y4 ) ) )
     => ( P @ X ) ) ).

% Abs_int_induct
thf(fact_8062_Abs__int__cases,axiom,
    ! [X: int] :
      ~ ! [Y4: set_Pr1261947904930325089at_nat] :
          ( ( X
            = ( abs_int @ Y4 ) )
         => ~ ( member2643936169264416010at_nat @ Y4
              @ ( collec5514110066124741708at_nat
                @ ^ [C3: set_Pr1261947904930325089at_nat] :
                  ? [X4: product_prod_nat_nat] :
                    ( ( intrel @ X4 @ X4 )
                    & ( C3
                      = ( collec3392354462482085612at_nat @ ( intrel @ X4 ) ) ) ) ) ) ) ).

% Abs_int_cases
thf(fact_8063_Abs__Integ__def,axiom,
    ( abs_Integ
    = ( quot_a8334514980957697477at_int @ intrel @ abs_int ) ) ).

% Abs_Integ_def
thf(fact_8064_Abs__int__inverse,axiom,
    ! [Y3: set_Pr1261947904930325089at_nat] :
      ( ( member2643936169264416010at_nat @ Y3
        @ ( collec5514110066124741708at_nat
          @ ^ [C3: set_Pr1261947904930325089at_nat] :
            ? [X4: product_prod_nat_nat] :
              ( ( intrel @ X4 @ X4 )
              & ( C3
                = ( collec3392354462482085612at_nat @ ( intrel @ X4 ) ) ) ) ) )
     => ( ( rep_int @ ( abs_int @ Y3 ) )
        = Y3 ) ) ).

% Abs_int_inverse
thf(fact_8065_Rep__int__inject,axiom,
    ! [X: int,Y3: int] :
      ( ( ( rep_int @ X )
        = ( rep_int @ Y3 ) )
      = ( X = Y3 ) ) ).

% Rep_int_inject
thf(fact_8066_Rep__int__inverse,axiom,
    ! [X: int] :
      ( ( abs_int @ ( rep_int @ X ) )
      = X ) ).

% Rep_int_inverse
thf(fact_8067_Rep__int__induct,axiom,
    ! [Y3: set_Pr1261947904930325089at_nat,P: set_Pr1261947904930325089at_nat > $o] :
      ( ( member2643936169264416010at_nat @ Y3
        @ ( collec5514110066124741708at_nat
          @ ^ [C3: set_Pr1261947904930325089at_nat] :
            ? [X4: product_prod_nat_nat] :
              ( ( intrel @ X4 @ X4 )
              & ( C3
                = ( collec3392354462482085612at_nat @ ( intrel @ X4 ) ) ) ) ) )
     => ( ! [X5: int] : ( P @ ( rep_int @ X5 ) )
       => ( P @ Y3 ) ) ) ).

% Rep_int_induct
thf(fact_8068_Rep__int__cases,axiom,
    ! [Y3: set_Pr1261947904930325089at_nat] :
      ( ( member2643936169264416010at_nat @ Y3
        @ ( collec5514110066124741708at_nat
          @ ^ [C3: set_Pr1261947904930325089at_nat] :
            ? [X4: product_prod_nat_nat] :
              ( ( intrel @ X4 @ X4 )
              & ( C3
                = ( collec3392354462482085612at_nat @ ( intrel @ X4 ) ) ) ) ) )
     => ~ ! [X5: int] :
            ( Y3
           != ( rep_int @ X5 ) ) ) ).

% Rep_int_cases
thf(fact_8069_Rep__int,axiom,
    ! [X: int] :
      ( member2643936169264416010at_nat @ ( rep_int @ X )
      @ ( collec5514110066124741708at_nat
        @ ^ [C3: set_Pr1261947904930325089at_nat] :
          ? [X4: product_prod_nat_nat] :
            ( ( intrel @ X4 @ X4 )
            & ( C3
              = ( collec3392354462482085612at_nat @ ( intrel @ X4 ) ) ) ) ) ) ).

% Rep_int
thf(fact_8070_type__definition__int,axiom,
    ( type_d8752208705193531015at_nat @ rep_int @ abs_int
    @ ( collec5514110066124741708at_nat
      @ ^ [C3: set_Pr1261947904930325089at_nat] :
        ? [X4: product_prod_nat_nat] :
          ( ( intrel @ X4 @ X4 )
          & ( C3
            = ( collec3392354462482085612at_nat @ ( intrel @ X4 ) ) ) ) ) ) ).

% type_definition_int
thf(fact_8071_Rep__Integ__def,axiom,
    ( rep_Integ
    = ( quot_r1512469584000298464at_nat @ rep_int ) ) ).

% Rep_Integ_def
thf(fact_8072_less__eq__literal_Oabs__eq,axiom,
    ! [Xa: list_char,X: list_char] :
      ( ( bNF_eq_onp_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) )
        @ Xa
        @ Xa )
     => ( ( bNF_eq_onp_list_char
          @ ^ [Cs: list_char] :
            ! [X4: char] :
              ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
             => ~ ( digit7 @ X4 ) )
          @ X
          @ X )
       => ( ( ord_less_eq_literal @ ( abs_literal @ Xa ) @ ( abs_literal @ X ) )
          = ( lexordp_eq_char
            @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) )
            @ Xa
            @ X ) ) ) ) ).

% less_eq_literal.abs_eq
thf(fact_8073_plus__literal_Orsp,axiom,
    ( bNF_re7399511318543894245t_char
    @ ( bNF_eq_onp_list_char
      @ ^ [Cs: list_char] :
        ! [X4: char] :
          ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
         => ~ ( digit7 @ X4 ) ) )
    @ ( bNF_re1407854171455731685t_char
      @ ( bNF_eq_onp_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) ) )
      @ ( bNF_eq_onp_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) ) ) )
    @ append_char
    @ append_char ) ).

% plus_literal.rsp
thf(fact_8074_less__eq__literal_Orsp,axiom,
    ( bNF_re7775871201573978401char_o
    @ ( bNF_eq_onp_list_char
      @ ^ [Cs: list_char] :
        ! [X4: char] :
          ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
         => ~ ( digit7 @ X4 ) ) )
    @ ( bNF_re6668474094832959905ar_o_o
      @ ( bNF_eq_onp_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) ) )
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2 )
    @ ( lexordp_eq_char
      @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) ) )
    @ ( lexordp_eq_char
      @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) ) ) ) ).

% less_eq_literal.rsp
thf(fact_8075_asciis__of__literal_Orsp,axiom,
    ( bNF_re901197953848981245nteger
    @ ( bNF_eq_onp_list_char
      @ ^ [Cs: list_char] :
        ! [X4: char] :
          ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
         => ~ ( digit7 @ X4 ) ) )
    @ ^ [Y5: list_Code_integer,Z2: list_Code_integer] : Y5 = Z2
    @ ( map_ch5843194146513361140nteger @ comm_s4049598766089966537nteger )
    @ ( map_ch5843194146513361140nteger @ comm_s4049598766089966537nteger ) ) ).

% asciis_of_literal.rsp
thf(fact_8076_size__literal_Orsp,axiom,
    ( bNF_re76688982720252355at_nat
    @ ( bNF_eq_onp_list_char
      @ ^ [Cs: list_char] :
        ! [X4: char] :
          ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
         => ~ ( digit7 @ X4 ) ) )
    @ ^ [Y5: nat,Z2: nat] : Y5 = Z2
    @ size_size_list_char
    @ size_size_list_char ) ).

% size_literal.rsp
thf(fact_8077_Literal_Orsp,axiom,
    ( bNF_re5598663031114558885t_char
    @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
    @ ( bNF_re7347849368244578525t_char
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
      @ ( bNF_re7972843584066424825t_char
        @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
        @ ( bNF_re796896441190010845t_char
          @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
          @ ( bNF_re4583855572895197261t_char
            @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
            @ ( bNF_re441219624009962717t_char
              @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
              @ ( bNF_re6157522605288126113t_char
                @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
                @ ( bNF_re1407854171455731685t_char
                  @ ( bNF_eq_onp_list_char
                    @ ^ [Cs: list_char] :
                      ! [X4: char] :
                        ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
                       => ~ ( digit7 @ X4 ) ) )
                  @ ( bNF_eq_onp_list_char
                    @ ^ [Cs: list_char] :
                      ! [X4: char] :
                        ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
                       => ~ ( digit7 @ X4 ) ) ) ) ) ) ) ) ) )
    @ ^ [B0: $o,B1: $o,B22: $o,B32: $o,B42: $o,B52: $o,B62: $o] : ( cons_char @ ( char2 @ B0 @ B1 @ B22 @ B32 @ B42 @ B52 @ B62 @ $false ) )
    @ ^ [B0: $o,B1: $o,B22: $o,B32: $o,B42: $o,B52: $o,B62: $o] : ( cons_char @ ( char2 @ B0 @ B1 @ B22 @ B32 @ B42 @ B52 @ B62 @ $false ) ) ) ).

% Literal.rsp
thf(fact_8078_less__literal_Orsp,axiom,
    ( bNF_re7775871201573978401char_o
    @ ( bNF_eq_onp_list_char
      @ ^ [Cs: list_char] :
        ! [X4: char] :
          ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
         => ~ ( digit7 @ X4 ) ) )
    @ ( bNF_re6668474094832959905ar_o_o
      @ ( bNF_eq_onp_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) ) )
      @ ^ [Y5: $o,Z2: $o] : Y5 = Z2 )
    @ ( lexordp_char
      @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) ) )
    @ ( lexordp_char
      @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) ) ) ) ).

% less_literal.rsp
thf(fact_8079_plus__literal_Oabs__eq,axiom,
    ! [Xa: list_char,X: list_char] :
      ( ( bNF_eq_onp_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) )
        @ Xa
        @ Xa )
     => ( ( bNF_eq_onp_list_char
          @ ^ [Cs: list_char] :
            ! [X4: char] :
              ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
             => ~ ( digit7 @ X4 ) )
          @ X
          @ X )
       => ( ( plus_plus_literal @ ( abs_literal @ Xa ) @ ( abs_literal @ X ) )
          = ( abs_literal @ ( append_char @ Xa @ X ) ) ) ) ) ).

% plus_literal.abs_eq
thf(fact_8080_literal_OAbs__literal__cases,axiom,
    ! [X: literal] :
      ~ ! [Y4: list_char] :
          ( ( X
            = ( abs_literal @ Y4 ) )
         => ~ ( member_list_char @ Y4
              @ ( collect_list_char
                @ ^ [Cs: list_char] :
                  ! [X4: char] :
                    ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
                   => ~ ( digit7 @ X4 ) ) ) ) ) ).

% literal.Abs_literal_cases
thf(fact_8081_literal_OAbs__literal__induct,axiom,
    ! [P: literal > $o,X: literal] :
      ( ! [Y4: list_char] :
          ( ( member_list_char @ Y4
            @ ( collect_list_char
              @ ^ [Cs: list_char] :
                ! [X4: char] :
                  ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
                 => ~ ( digit7 @ X4 ) ) ) )
         => ( P @ ( abs_literal @ Y4 ) ) )
     => ( P @ X ) ) ).

% literal.Abs_literal_induct
thf(fact_8082_literal_OAbs__literal__inject,axiom,
    ! [X: list_char,Y3: list_char] :
      ( ( member_list_char @ X
        @ ( collect_list_char
          @ ^ [Cs: list_char] :
            ! [X4: char] :
              ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
             => ~ ( digit7 @ X4 ) ) ) )
     => ( ( member_list_char @ Y3
          @ ( collect_list_char
            @ ^ [Cs: list_char] :
              ! [X4: char] :
                ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
               => ~ ( digit7 @ X4 ) ) ) )
       => ( ( ( abs_literal @ X )
            = ( abs_literal @ Y3 ) )
          = ( X = Y3 ) ) ) ) ).

% literal.Abs_literal_inject
thf(fact_8083_size__literal_Oabs__eq,axiom,
    ! [X: list_char] :
      ( ( bNF_eq_onp_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) )
        @ X
        @ X )
     => ( ( size_size_literal @ ( abs_literal @ X ) )
        = ( size_size_list_char @ X ) ) ) ).

% size_literal.abs_eq
thf(fact_8084_literal_Oexplode,axiom,
    ! [X: literal] :
      ( member_list_char @ ( explode @ X )
      @ ( collect_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) ) ) ) ).

% literal.explode
thf(fact_8085_literal_Oexplode__cases,axiom,
    ! [Y3: list_char] :
      ( ( member_list_char @ Y3
        @ ( collect_list_char
          @ ^ [Cs: list_char] :
            ! [X4: char] :
              ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
             => ~ ( digit7 @ X4 ) ) ) )
     => ~ ! [X5: literal] :
            ( Y3
           != ( explode @ X5 ) ) ) ).

% literal.explode_cases
thf(fact_8086_literal_Oexplode__induct,axiom,
    ! [Y3: list_char,P: list_char > $o] :
      ( ( member_list_char @ Y3
        @ ( collect_list_char
          @ ^ [Cs: list_char] :
            ! [X4: char] :
              ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
             => ~ ( digit7 @ X4 ) ) ) )
     => ( ! [X5: literal] : ( P @ ( explode @ X5 ) )
       => ( P @ Y3 ) ) ) ).

% literal.explode_induct
thf(fact_8087_zero__literal_Orsp,axiom,
    ( bNF_eq_onp_list_char
    @ ^ [Cs: list_char] :
      ! [X4: char] :
        ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
       => ~ ( digit7 @ X4 ) )
    @ nil_char
    @ nil_char ) ).

% zero_literal.rsp
thf(fact_8088_String_OQuotient__literal,axiom,
    ( quotie6109894551476798619iteral
    @ ( bNF_eq_onp_list_char
      @ ^ [Cs: list_char] :
        ! [X4: char] :
          ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
         => ~ ( digit7 @ X4 ) ) )
    @ abs_literal
    @ explode
    @ cr_literal ) ).

% String.Quotient_literal
thf(fact_8089_Literal_Oabs__eq,axiom,
    ! [X: list_char,Xg: $o,Xf: $o,Xe: $o,Xd: $o,Xc: $o,Xb: $o,Xa: $o] :
      ( ( bNF_eq_onp_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) )
        @ X
        @ X )
     => ( ( literal2 @ Xg @ Xf @ Xe @ Xd @ Xc @ Xb @ Xa @ ( abs_literal @ X ) )
        = ( abs_literal @ ( cons_char @ ( char2 @ Xg @ Xf @ Xe @ Xd @ Xc @ Xb @ Xa @ $false ) @ X ) ) ) ) ).

% Literal.abs_eq
thf(fact_8090_literal_OAbs__literal__inverse,axiom,
    ! [Y3: list_char] :
      ( ( member_list_char @ Y3
        @ ( collect_list_char
          @ ^ [Cs: list_char] :
            ! [X4: char] :
              ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
             => ~ ( digit7 @ X4 ) ) ) )
     => ( ( explode @ ( abs_literal @ Y3 ) )
        = Y3 ) ) ).

% literal.Abs_literal_inverse
thf(fact_8091_literal_Otype__definition__literal,axiom,
    ( type_d4752411451802217481t_char @ explode @ abs_literal
    @ ( collect_list_char
      @ ^ [Cs: list_char] :
        ! [X4: char] :
          ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
         => ~ ( digit7 @ X4 ) ) ) ) ).

% literal.type_definition_literal
thf(fact_8092_less__literal_Oabs__eq,axiom,
    ! [Xa: list_char,X: list_char] :
      ( ( bNF_eq_onp_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) )
        @ Xa
        @ Xa )
     => ( ( bNF_eq_onp_list_char
          @ ^ [Cs: list_char] :
            ! [X4: char] :
              ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
             => ~ ( digit7 @ X4 ) )
          @ X
          @ X )
       => ( ( ord_less_literal @ ( abs_literal @ Xa ) @ ( abs_literal @ X ) )
          = ( lexordp_char
            @ ^ [C3: char,D2: char] : ( ord_less_nat @ ( comm_s629917340098488124ar_nat @ C3 ) @ ( comm_s629917340098488124ar_nat @ D2 ) )
            @ Xa
            @ X ) ) ) ) ).

% less_literal.abs_eq
thf(fact_8093_asciis__of__literal_Oabs__eq,axiom,
    ! [X: list_char] :
      ( ( bNF_eq_onp_list_char
        @ ^ [Cs: list_char] :
          ! [X4: char] :
            ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
           => ~ ( digit7 @ X4 ) )
        @ X
        @ X )
     => ( ( asciis_of_literal @ ( abs_literal @ X ) )
        = ( map_ch5843194146513361140nteger @ comm_s4049598766089966537nteger @ X ) ) ) ).

% asciis_of_literal.abs_eq
thf(fact_8094_literal__of__asciis_Orsp,axiom,
    ( bNF_re5828396963709814525t_char
    @ ^ [Y5: list_Code_integer,Z2: list_Code_integer] : Y5 = Z2
    @ ( bNF_eq_onp_list_char
      @ ^ [Cs: list_char] :
        ! [X4: char] :
          ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
         => ~ ( digit7 @ X4 ) ) )
    @ ( map_Co843364623960961780r_char @ ( comp_c4562247934908617188nteger @ ascii_of @ unique1708501630192214702nteger ) )
    @ ( map_Co843364623960961780r_char @ ( comp_c4562247934908617188nteger @ ascii_of @ unique1708501630192214702nteger ) ) ) ).

% literal_of_asciis.rsp
thf(fact_8095_implode_Orsp,axiom,
    ( bNF_re1407854171455731685t_char
    @ ^ [Y5: list_char,Z2: list_char] : Y5 = Z2
    @ ( bNF_eq_onp_list_char
      @ ^ [Cs: list_char] :
        ! [X4: char] :
          ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
         => ~ ( digit7 @ X4 ) ) )
    @ ( map_char_char @ ascii_of )
    @ ( map_char_char @ ascii_of ) ) ).

% implode.rsp
thf(fact_8096_literal__of__asciis_Otransfer,axiom,
    ( bNF_re3035051291559180600iteral
    @ ^ [Y5: list_Code_integer,Z2: list_Code_integer] : Y5 = Z2
    @ pcr_literal
    @ ( map_Co843364623960961780r_char @ ( comp_c4562247934908617188nteger @ ascii_of @ unique1708501630192214702nteger ) )
    @ literal_of_asciis ) ).

% literal_of_asciis.transfer
thf(fact_8097_String_Oliteral__of__asciis__def,axiom,
    ( literal_of_asciis
    = ( map_fu9222038735678016191iteral @ id_list_Code_integer @ abs_literal @ ( map_Co843364623960961780r_char @ ( comp_c4562247934908617188nteger @ ascii_of @ unique1708501630192214702nteger ) ) ) ) ).

% String.literal_of_asciis_def
thf(fact_8098_literal__of__asciis_Orep__eq,axiom,
    ! [X: list_Code_integer] :
      ( ( explode @ ( literal_of_asciis @ X ) )
      = ( map_Co843364623960961780r_char @ ( comp_c4562247934908617188nteger @ ascii_of @ unique1708501630192214702nteger ) @ X ) ) ).

% literal_of_asciis.rep_eq
thf(fact_8099_literal__of__asciis_Oabs__eq,axiom,
    ( literal_of_asciis
    = ( ^ [X4: list_Code_integer] : ( abs_literal @ ( map_Co843364623960961780r_char @ ( comp_c4562247934908617188nteger @ ascii_of @ unique1708501630192214702nteger ) @ X4 ) ) ) ) ).

% literal_of_asciis.abs_eq
thf(fact_8100_String_Oliteral__of__asciis__Cons,axiom,
    ! [K: code_integer,Ks: list_Code_integer] :
      ( ( literal_of_asciis @ ( cons_Code_integer @ K @ Ks ) )
      = ( case_char_literal
        @ ^ [B0: $o,B1: $o,B22: $o,B32: $o,B42: $o,B52: $o,B62: $o,B72: $o] : ( literal2 @ B0 @ B1 @ B22 @ B32 @ B42 @ B52 @ B62 @ ( literal_of_asciis @ Ks ) )
        @ ( unique1708501630192214702nteger @ K ) ) ) ).

% String.literal_of_asciis_Cons
thf(fact_8101_literal_Odomain,axiom,
    ( ( domain7888411570377768909iteral @ pcr_literal )
    = ( ^ [X4: list_char] :
        ? [Y: list_char] :
          ( ( list_all2_char_char
            @ ^ [Y5: char,Z2: char] : Y5 = Z2
            @ X4
            @ Y )
          & ! [Z3: char] :
              ( ( member_char @ Z3 @ ( set_char2 @ Y ) )
             => ~ ( digit7 @ Z3 ) ) ) ) ) ).

% literal.domain
thf(fact_8102_literal_Odomain__eq,axiom,
    ( ( domain7888411570377768909iteral @ pcr_literal )
    = ( ^ [Cs: list_char] :
        ! [X4: char] :
          ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
         => ~ ( digit7 @ X4 ) ) ) ) ).

% literal.domain_eq
thf(fact_8103_literal_Odomain__par__left__total,axiom,
    ! [P6: list_char > $o] :
      ( ( left_t8440299596084406506t_char
        @ ( list_all2_char_char
          @ ^ [Y5: char,Z2: char] : Y5 = Z2 ) )
     => ( ( bNF_re6668474094832959905ar_o_o
          @ ( list_all2_char_char
            @ ^ [Y5: char,Z2: char] : Y5 = Z2 )
          @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
          @ P6
          @ ^ [Cs: list_char] :
            ! [X4: char] :
              ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
             => ~ ( digit7 @ X4 ) ) )
       => ( ( domain7888411570377768909iteral @ pcr_literal )
          = P6 ) ) ) ).

% literal.domain_par_left_total
thf(fact_8104_rat_Odomain__par,axiom,
    ! [DR1: int > $o,DR2: int > $o,P22: product_prod_int_int > $o] :
      ( ( ( domainp_int_int
          @ ^ [Y5: int,Z2: int] : Y5 = Z2 )
        = DR1 )
     => ( ( ( domainp_int_int
            @ ^ [Y5: int,Z2: int] : Y5 = Z2 )
          = DR2 )
       => ( ( bNF_re8699439704749558557nt_o_o
            @ ( basic_4387203522000727145nt_int
              @ ^ [Y5: int,Z2: int] : Y5 = Z2
              @ ^ [Y5: int,Z2: int] : Y5 = Z2 )
            @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
            @ P22
            @ ^ [X4: product_prod_int_int] : ( ratrel @ X4 @ X4 ) )
         => ( ( domain9213661015745956397nt_rat @ pcr_rat )
            = ( inf_in3604695632404883862_int_o @ ( basic_1567116559311922317nt_int @ DR1 @ DR2 ) @ P22 ) ) ) ) ) ).

% rat.domain_par
thf(fact_8105_digit7__def,axiom,
    ( digit7
    = ( case_char_o
      @ ^ [X12: $o,X23: $o,X33: $o,X43: $o,X53: $o,X63: $o,X73: $o,X83: $o] : X83 ) ) ).

% digit7_def
thf(fact_8106_int_Odomain,axiom,
    ! [DR1: nat > $o,DR2: nat > $o] :
      ( ( ( domainp_nat_nat
          @ ^ [Y5: nat,Z2: nat] : Y5 = Z2 )
        = DR1 )
     => ( ( ( domainp_nat_nat
            @ ^ [Y5: nat,Z2: nat] : Y5 = Z2 )
          = DR2 )
       => ( ( domain7287725470393535433at_int @ pcr_int )
          = ( basic_570253317919918037at_nat @ DR1 @ DR2 ) ) ) ) ).

% int.domain
thf(fact_8107_int_Oright__total,axiom,
    right_1157779049177982926at_int @ pcr_int ).

% int.right_total
thf(fact_8108_rat_Odomain,axiom,
    ( ( domain9213661015745956397nt_rat @ pcr_rat )
    = ( ^ [X4: product_prod_int_int] :
        ? [Y: product_prod_int_int] :
          ( ( basic_4387203522000727145nt_int
            @ ^ [Y5: int,Z2: int] : Y5 = Z2
            @ ^ [Y5: int,Z2: int] : Y5 = Z2
            @ X4
            @ Y )
          & ( ratrel @ Y @ Y ) ) ) ) ).

% rat.domain
thf(fact_8109_literal_Odomain__par,axiom,
    ! [DR: char > $o,P22: list_char > $o] :
      ( ( ( domainp_char_char
          @ ^ [Y5: char,Z2: char] : Y5 = Z2 )
        = DR )
     => ( ( bNF_re6668474094832959905ar_o_o
          @ ( list_all2_char_char
            @ ^ [Y5: char,Z2: char] : Y5 = Z2 )
          @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
          @ P22
          @ ^ [Cs: list_char] :
            ! [X4: char] :
              ( ( member_char @ X4 @ ( set_char2 @ Cs ) )
             => ~ ( digit7 @ X4 ) ) )
       => ( ( domain7888411570377768909iteral @ pcr_literal )
          = ( inf_inf_list_char_o @ ( list_all_char @ DR ) @ P22 ) ) ) ) ).

% literal.domain_par
thf(fact_8110_char_Odisc__eq__case,axiom,
    ! [Char: char] :
      ( case_char_o
      @ ^ [Uu: $o,Uv: $o,Uw: $o,Ux: $o,Uy: $o,Uz: $o,Va: $o,Vb: $o] : $true
      @ Char ) ).

% char.disc_eq_case
thf(fact_8111_int_Oleft__total,axiom,
    left_t1861001511420785031at_int @ pcr_int ).

% int.left_total
thf(fact_8112_rat_Odomain__par__left__total,axiom,
    ! [P6: product_prod_int_int > $o] :
      ( ( left_t3131394472396969446nt_int
        @ ( basic_4387203522000727145nt_int
          @ ^ [Y5: int,Z2: int] : Y5 = Z2
          @ ^ [Y5: int,Z2: int] : Y5 = Z2 ) )
     => ( ( bNF_re8699439704749558557nt_o_o
          @ ( basic_4387203522000727145nt_int
            @ ^ [Y5: int,Z2: int] : Y5 = Z2
            @ ^ [Y5: int,Z2: int] : Y5 = Z2 )
          @ ^ [Y5: $o,Z2: $o] : Y5 = Z2
          @ P6
          @ ^ [X4: product_prod_int_int] : ( ratrel @ X4 @ X4 ) )
       => ( ( domain9213661015745956397nt_rat @ pcr_rat )
          = P6 ) ) ) ).

% rat.domain_par_left_total
thf(fact_8113_Abs__rat__inject,axiom,
    ! [X: set_Pr958786334691620121nt_int,Y3: set_Pr958786334691620121nt_int] :
      ( ( member2340774599025711042nt_int @ X
        @ ( collec5210948495886036740nt_int
          @ ^ [C3: set_Pr958786334691620121nt_int] :
            ? [X4: product_prod_int_int] :
              ( ( ratrel @ X4 @ X4 )
              & ( C3
                = ( collec213857154873943460nt_int @ ( ratrel @ X4 ) ) ) ) ) )
     => ( ( member2340774599025711042nt_int @ Y3
          @ ( collec5210948495886036740nt_int
            @ ^ [C3: set_Pr958786334691620121nt_int] :
              ? [X4: product_prod_int_int] :
                ( ( ratrel @ X4 @ X4 )
                & ( C3
                  = ( collec213857154873943460nt_int @ ( ratrel @ X4 ) ) ) ) ) )
       => ( ( ( abs_rat @ X )
            = ( abs_rat @ Y3 ) )
          = ( X = Y3 ) ) ) ) ).

% Abs_rat_inject
thf(fact_8114_Abs__rat__cases,axiom,
    ! [X: rat] :
      ~ ! [Y4: set_Pr958786334691620121nt_int] :
          ( ( X
            = ( abs_rat @ Y4 ) )
         => ~ ( member2340774599025711042nt_int @ Y4
              @ ( collec5210948495886036740nt_int
                @ ^ [C3: set_Pr958786334691620121nt_int] :
                  ? [X4: product_prod_int_int] :
                    ( ( ratrel @ X4 @ X4 )
                    & ( C3
                      = ( collec213857154873943460nt_int @ ( ratrel @ X4 ) ) ) ) ) ) ) ).

% Abs_rat_cases
thf(fact_8115_Abs__rat__induct,axiom,
    ! [P: rat > $o,X: rat] :
      ( ! [Y4: set_Pr958786334691620121nt_int] :
          ( ( member2340774599025711042nt_int @ Y4
            @ ( collec5210948495886036740nt_int
              @ ^ [C3: set_Pr958786334691620121nt_int] :
                ? [X4: product_prod_int_int] :
                  ( ( ratrel @ X4 @ X4 )
                  & ( C3
                    = ( collec213857154873943460nt_int @ ( ratrel @ X4 ) ) ) ) ) )
         => ( P @ ( abs_rat @ Y4 ) ) )
     => ( P @ X ) ) ).

% Abs_rat_induct
thf(fact_8116_Abs__rat__inverse,axiom,
    ! [Y3: set_Pr958786334691620121nt_int] :
      ( ( member2340774599025711042nt_int @ Y3
        @ ( collec5210948495886036740nt_int
          @ ^ [C3: set_Pr958786334691620121nt_int] :
            ? [X4: product_prod_int_int] :
              ( ( ratrel @ X4 @ X4 )
              & ( C3
                = ( collec213857154873943460nt_int @ ( ratrel @ X4 ) ) ) ) ) )
     => ( ( rep_rat @ ( abs_rat @ Y3 ) )
        = Y3 ) ) ).

% Abs_rat_inverse
thf(fact_8117_type__definition__rat,axiom,
    ( type_d8554052265237484179nt_int @ rep_rat @ abs_rat
    @ ( collec5210948495886036740nt_int
      @ ^ [C3: set_Pr958786334691620121nt_int] :
        ? [X4: product_prod_int_int] :
          ( ( ratrel @ X4 @ X4 )
          & ( C3
            = ( collec213857154873943460nt_int @ ( ratrel @ X4 ) ) ) ) ) ) ).

% type_definition_rat
thf(fact_8118_Rep__rat__induct,axiom,
    ! [Y3: set_Pr958786334691620121nt_int,P: set_Pr958786334691620121nt_int > $o] :
      ( ( member2340774599025711042nt_int @ Y3
        @ ( collec5210948495886036740nt_int
          @ ^ [C3: set_Pr958786334691620121nt_int] :
            ? [X4: product_prod_int_int] :
              ( ( ratrel @ X4 @ X4 )
              & ( C3
                = ( collec213857154873943460nt_int @ ( ratrel @ X4 ) ) ) ) ) )
     => ( ! [X5: rat] : ( P @ ( rep_rat @ X5 ) )
       => ( P @ Y3 ) ) ) ).

% Rep_rat_induct
thf(fact_8119_Rep__rat__cases,axiom,
    ! [Y3: set_Pr958786334691620121nt_int] :
      ( ( member2340774599025711042nt_int @ Y3
        @ ( collec5210948495886036740nt_int
          @ ^ [C3: set_Pr958786334691620121nt_int] :
            ? [X4: product_prod_int_int] :
              ( ( ratrel @ X4 @ X4 )
              & ( C3
                = ( collec213857154873943460nt_int @ ( ratrel @ X4 ) ) ) ) ) )
     => ~ ! [X5: rat] :
            ( Y3
           != ( rep_rat @ X5 ) ) ) ).

% Rep_rat_cases
thf(fact_8120_Rep__rat,axiom,
    ! [X: rat] :
      ( member2340774599025711042nt_int @ ( rep_rat @ X )
      @ ( collec5210948495886036740nt_int
        @ ^ [C3: set_Pr958786334691620121nt_int] :
          ? [X4: product_prod_int_int] :
            ( ( ratrel @ X4 @ X4 )
            & ( C3
              = ( collec213857154873943460nt_int @ ( ratrel @ X4 ) ) ) ) ) ) ).

% Rep_rat
thf(fact_8121_int_Obi__total,axiom,
    bi_tot896582865486249351at_int @ pcr_int ).

% int.bi_total
thf(fact_8122_gcd__nat_Oordering__axioms,axiom,
    ( ordering_nat @ dvd_dvd_nat
    @ ^ [M5: nat,N5: nat] :
        ( ( dvd_dvd_nat @ M5 @ N5 )
        & ( M5 != N5 ) ) ) ).

% gcd_nat.ordering_axioms
thf(fact_8123_typerep_Osize__neq,axiom,
    ! [X: typerep] :
      ( ( size_size_typerep @ X )
     != zero_zero_nat ) ).

% typerep.size_neq
thf(fact_8124_gcd__nat_Opreordering__axioms,axiom,
    ( preordering_nat @ dvd_dvd_nat
    @ ^ [M5: nat,N5: nat] :
        ( ( dvd_dvd_nat @ M5 @ N5 )
        & ( M5 != N5 ) ) ) ).

% gcd_nat.preordering_axioms
thf(fact_8125_typerep_Osize_I2_J,axiom,
    ! [X1: literal,X2: list_typerep] :
      ( ( size_size_typerep @ ( typerep2 @ X1 @ X2 ) )
      = ( plus_plus_nat @ ( size_list_typerep @ size_size_typerep @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).

% typerep.size(2)
thf(fact_8126_typerep_Osize__gen,axiom,
    ! [X1: literal,X2: list_typerep] :
      ( ( size_typerep @ ( typerep2 @ X1 @ X2 ) )
      = ( plus_plus_nat @ ( size_list_typerep @ size_typerep @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).

% typerep.size_gen
thf(fact_8127_digit6__def,axiom,
    ( digit6
    = ( case_char_o
      @ ^ [X12: $o,X23: $o,X33: $o,X43: $o,X53: $o,X63: $o,X73: $o,X83: $o] : X73 ) ) ).

% digit6_def
thf(fact_8128_digit5__def,axiom,
    ( digit5
    = ( case_char_o
      @ ^ [X12: $o,X23: $o,X33: $o,X43: $o,X53: $o,X63: $o,X73: $o,X83: $o] : X63 ) ) ).

% digit5_def
thf(fact_8129_digit0__def,axiom,
    ( digit0
    = ( case_char_o
      @ ^ [X12: $o,X23: $o,X33: $o,X43: $o,X53: $o,X63: $o,X73: $o,X83: $o] : X12 ) ) ).

% digit0_def
thf(fact_8130_digit1__def,axiom,
    ( digit1
    = ( case_char_o
      @ ^ [X12: $o,X23: $o,X33: $o,X43: $o,X53: $o,X63: $o,X73: $o,X83: $o] : X23 ) ) ).

% digit1_def
thf(fact_8131_digit4__def,axiom,
    ( digit4
    = ( case_char_o
      @ ^ [X12: $o,X23: $o,X33: $o,X43: $o,X53: $o,X63: $o,X73: $o,X83: $o] : X53 ) ) ).

% digit4_def
thf(fact_8132_digit3__def,axiom,
    ( digit3
    = ( case_char_o
      @ ^ [X12: $o,X23: $o,X33: $o,X43: $o,X53: $o,X63: $o,X73: $o,X83: $o] : X43 ) ) ).

% digit3_def
thf(fact_8133_digit2__def,axiom,
    ( digit2
    = ( case_char_o
      @ ^ [X12: $o,X23: $o,X33: $o,X43: $o,X53: $o,X63: $o,X73: $o,X83: $o] : X33 ) ) ).

% digit2_def
thf(fact_8134_log_Opelims,axiom,
    ! [X: code_natural,Xa: code_natural,Y3: code_natural] :
      ( ( ( log @ X @ Xa )
        = Y3 )
     => ( ( accp_P8126237942716283194atural @ log_rel @ ( produc3574140220909816553atural @ X @ Xa ) )
       => ~ ( ( ( ( ( ord_le1926595141338095240atural @ X @ one_one_Code_natural )
                  | ( ord_le5570908160329646204atural @ Xa @ X ) )
               => ( Y3 = one_one_Code_natural ) )
              & ( ~ ( ( ord_le1926595141338095240atural @ X @ one_one_Code_natural )
                    | ( ord_le5570908160329646204atural @ Xa @ X ) )
               => ( Y3
                  = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( log @ X @ ( divide5121882707175180666atural @ Xa @ X ) ) ) ) ) )
           => ~ ( accp_P8126237942716283194atural @ log_rel @ ( produc3574140220909816553atural @ X @ Xa ) ) ) ) ) ).

% log.pelims
thf(fact_8135_log_Ocases,axiom,
    ! [X: produc7822875418678951345atural] :
      ~ ! [B2: code_natural,I3: code_natural] :
          ( X
         != ( produc3574140220909816553atural @ B2 @ I3 ) ) ).

% log.cases
thf(fact_8136_full__exhaustive__natural_H_Ocases,axiom,
    ! [X: produc989692990947075319atural] :
      ~ ! [F5: produc4972180933644002618e_term > option6357759511663192854e_term,D3: code_natural,I3: code_natural] :
          ( X
         != ( produc3831813291587773865atural @ F5 @ ( produc3574140220909816553atural @ D3 @ I3 ) ) ) ).

% full_exhaustive_natural'.cases
thf(fact_8137_exhaustive__natural_H_Ocases,axiom,
    ! [X: produc8731074985263844745atural] :
      ~ ! [F5: code_natural > option6357759511663192854e_term,D3: code_natural,I3: code_natural] :
          ( X
         != ( produc2252593628808123835atural @ F5 @ ( produc3574140220909816553atural @ D3 @ I3 ) ) ) ).

% exhaustive_natural'.cases
thf(fact_8138_Random__Pred_Onot__randompred__def,axiom,
    ( random6974930770145893639ompred
    = ( ^ [P3: produc7822875418678951345atural > produc4675096598859438275atural,S2: produc7822875418678951345atural] :
          ( produc6665183775751917029atural
          @ ^ [P7: pred_Product_unit,S7: produc7822875418678951345atural] : ( if_Pro3444522238938527101atural @ ( eval_Product_unit @ P7 @ product_Unity ) @ ( produc5069803637994805237atural @ bot_bo2717538794563056311t_unit @ S7 ) @ ( produc5069803637994805237atural @ ( single_Product_unit @ product_Unity ) @ S7 ) )
          @ ( P3 @ S2 ) ) ) ) ).

% Random_Pred.not_randompred_def

% Helper facts (33)
thf(help_If_2_1_If_001t__Int__Oint_T,axiom,
    ! [X: int,Y3: int] :
      ( ( if_int @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Int__Oint_T,axiom,
    ! [X: int,Y3: int] :
      ( ( if_int @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y3: nat] :
      ( ( if_nat @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y3: nat] :
      ( ( if_nat @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Num__Onum_T,axiom,
    ! [X: num,Y3: num] :
      ( ( if_num @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Num__Onum_T,axiom,
    ! [X: num,Y3: num] :
      ( ( if_num @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Rat__Orat_T,axiom,
    ! [X: rat,Y3: rat] :
      ( ( if_rat @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Rat__Orat_T,axiom,
    ! [X: rat,Y3: rat] :
      ( ( if_rat @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Code____Numeral__Ointeger_T,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( if_Code_integer @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Code____Numeral__Ointeger_T,axiom,
    ! [X: code_integer,Y3: code_integer] :
      ( ( if_Code_integer @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Code____Numeral__Onatural_T,axiom,
    ! [X: code_natural,Y3: code_natural] :
      ( ( if_Code_natural @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Code____Numeral__Onatural_T,axiom,
    ! [X: code_natural,Y3: code_natural] :
      ( ( if_Code_natural @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Set__Oset_It__Nat__Onat_J_T,axiom,
    ! [X: set_nat,Y3: set_nat] :
      ( ( if_set_nat @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Set__Oset_It__Nat__Onat_J_T,axiom,
    ! [X: set_nat,Y3: set_nat] :
      ( ( if_set_nat @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Option__Ooption_It__Num__Onum_J_T,axiom,
    ! [X: option_num,Y3: option_num] :
      ( ( if_option_num @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Option__Ooption_It__Num__Onum_J_T,axiom,
    ! [X: option_num,Y3: option_num] :
      ( ( if_option_num @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Heap____Time____Monad__OHeap_Itf__a_J_T,axiom,
    ! [X: heap_Time_Heap_a,Y3: heap_Time_Heap_a] :
      ( ( if_Heap_Time_Heap_a @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Heap____Time____Monad__OHeap_Itf__a_J_T,axiom,
    ! [X: heap_Time_Heap_a,Y3: heap_Time_Heap_a] :
      ( ( if_Heap_Time_Heap_a @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_T,axiom,
    ! [X: product_prod_int_int,Y3: product_prod_int_int] :
      ( ( if_Pro3027730157355071871nt_int @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_T,axiom,
    ! [X: product_prod_int_int,Y3: product_prod_int_int] :
      ( ( if_Pro3027730157355071871nt_int @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X: product_prod_nat_nat,Y3: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X: product_prod_nat_nat,Y3: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J_T,axiom,
    ! [X: produc6271795597528267376eger_o,Y3: produc6271795597528267376eger_o] :
      ( ( if_Pro5737122678794959658eger_o @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J_T,axiom,
    ! [X: produc6271795597528267376eger_o,Y3: produc6271795597528267376eger_o] :
      ( ( if_Pro5737122678794959658eger_o @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_T,axiom,
    ! [X: produc8923325533196201883nteger,Y3: produc8923325533196201883nteger] :
      ( ( if_Pro6119634080678213985nteger @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_T,axiom,
    ! [X: produc8923325533196201883nteger,Y3: produc8923325533196201883nteger] :
      ( ( if_Pro6119634080678213985nteger @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_T,axiom,
    ! [X: option3562590408128118217it_nat,Y3: option3562590408128118217it_nat] :
      ( ( if_opt6883606601682554499it_nat @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_T,axiom,
    ! [X: option3562590408128118217it_nat,Y3: option3562590408128118217it_nat] :
      ( ( if_opt6883606601682554499it_nat @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Predicate__Opred_It__Product____Type__Ounit_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J_T,axiom,
    ! [X: produc4675096598859438275atural,Y3: produc4675096598859438275atural] :
      ( ( if_Pro3444522238938527101atural @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Predicate__Opred_It__Product____Type__Ounit_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J_T,axiom,
    ! [X: produc4675096598859438275atural,Y3: produc4675096598859438275atural] :
      ( ( if_Pro3444522238938527101atural @ $true @ X @ Y3 )
      = X ) ).

thf(help_If_3_1_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_T,axiom,
    ! [X: option8956607266484857688it_nat,Y3: option8956607266484857688it_nat] :
      ( ( if_opt1729522071442692626it_nat @ $false @ X @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J_T,axiom,
    ! [X: option8956607266484857688it_nat,Y3: option8956607266484857688it_nat] :
      ( ( if_opt1729522071442692626it_nat @ $true @ X @ Y3 )
      = X ) ).

% Conjectures (2)
thf(conj_0,hypothesis,
    p @ x ).

thf(conj_1,conjecture,
    heap_Time_success_a @ ( heap_Time_assert_a @ p @ x ) @ h ).

%------------------------------------------------------------------------------